All functions:
  Elements:
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/fuzz-message.c:23,1
    - Dst: message_new_incoming
      Src: /src/fuzz-message.c:30,1
    - Dst: memcpy
      Src: /src/fuzz-message.c:37,1
    - Dst: message_parse_metadata
      Src: /src/fuzz-message.c:39,1
    - Dst: message_stitch_sender
      Src: /src/fuzz-message.c:43,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 22
    functionDepth: 1
    functionLinenumber: 22
    functionLinenumberEnd: 46
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/fuzz-message.c
    functionUses: 0
    functionsReached:
    - message_new_incoming
    - message_parse_metadata
    - message_stitch_sender
    - _c_cleanup_
    - memcpy
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-message.c:17,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-message.c:18,1
    - Dst: test_message_append_sasl
      Src: /src/dbus-broker/test/dbus/bench-message.c:24,1
    - Dst: test_message_append_hello
      Src: /src/dbus-broker/test/dbus/bench-message.c:25,1
    - Dst: socket
      Src: /src/dbus-broker/test/dbus/bench-message.c:27,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/bench-message.c:28,1
    - Dst: connect
      Src: /src/dbus-broker/test/dbus/bench-message.c:30,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/bench-message.c:31,1
    - Dst: write
      Src: /src/dbus-broker/test/dbus/bench-message.c:33,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/bench-message.c:34,1
    - Dst: recv
      Src: /src/dbus-broker/test/dbus/bench-message.c:36,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/bench-message.c:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 2
    argNames:
    - broker
    - fdp
    argTypes:
    - Broker*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 16
    functionDepth: 1
    functionLinenumber: 16
    functionLinenumberEnd: 41
    functionName: test_connect_blocking_fd
    functionSourceFile: /src/dbus-broker/test/dbus/bench-message.c
    functionUses: 0
    functionsReached:
    - recv
    - test_message_append_hello
    - connect
    - socket
    - _c_cleanup_
    - write
    - test_message_append_sasl
    - c_assert
    linkageType: ''
    returnType: void
    signature: void test_connect_blocking_fd(Broker *broker, int *fdp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-message.c:44,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-message.c:45,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-message.c:46,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-message.c:47,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/bench-message.c:52,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/bench-message.c:53,1
    - Dst: util_broker_settle
      Src: /src/dbus-broker/test/dbus/bench-message.c:54,1
    - Dst: test_connect_blocking_fd
      Src: /src/dbus-broker/test/dbus/bench-message.c:56,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/bench-message.c:59,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-message.c:62,1
    - Dst: asprintf
      Src: /src/dbus-broker/test/dbus/bench-message.c:64,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/bench-message.c:65,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/bench-message.c:67,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/bench-message.c:70,1
    - Dst: test_connect_blocking_fd
      Src: /src/dbus-broker/test/dbus/bench-message.c:77,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-message.c:80,1
    - Dst: test_message_append_ping
      Src: /src/dbus-broker/test/dbus/bench-message.c:84,1
    - Dst: write
      Src: /src/dbus-broker/test/dbus/bench-message.c:86,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/bench-message.c:87,1
    - Dst: recv
      Src: /src/dbus-broker/test/dbus/bench-message.c:89,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/bench-message.c:90,1
    - Dst: metrics_sample_start
      Src: /src/dbus-broker/test/dbus/bench-message.c:95,1
    - Dst: write
      Src: /src/dbus-broker/test/dbus/bench-message.c:97,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/bench-message.c:98,1
    - Dst: recv
      Src: /src/dbus-broker/test/dbus/bench-message.c:100,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/bench-message.c:101,1
    - Dst: metrics_sample_end
      Src: /src/dbus-broker/test/dbus/bench-message.c:103,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/bench-message.c:106,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 40
    argCount: 6
    argNames:
    - metrics
    - n_matches
    - n_replies
    - input
    - n_input
    - n_output
    argTypes:
    - Metrics*
    - size_t
    - size_t
    - void*
    - ssize_t
    - ssize_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 107
    functionName: test_message_transaction
    functionSourceFile: /src/dbus-broker/test/dbus/bench-message.c
    functionUses: 0
    functionsReached:
    - recv
    - util_broker_spawn
    - test_connect_blocking_fd
    - sd_bus_call_method
    - util_broker_connect
    - metrics_sample_start
    - test_message_append_ping
    - util_broker_terminate
    - _c_cleanup_
    - write
    - metrics_sample_end
    - c_assert
    - asprintf
    - util_broker_settle
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_message_transaction(Metrics *metrics, size_t n_matches, size_t
      n_replies, void *input, ssize_t n_input, ssize_t n_output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-message.c:111,1
    - Dst: METRICS_INIT
      Src: /src/dbus-broker/test/dbus/bench-message.c:111,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-message.c:112,1
    - Dst: test_message_append_broadcast
      Src: /src/dbus-broker/test/dbus/bench-message.c:115,1
    - Dst: test_message_append_signal
      Src: /src/dbus-broker/test/dbus/bench-message.c:116,1
    - Dst: test_message_transaction
      Src: /src/dbus-broker/test/dbus/bench-message.c:118,1
    - Dst: fprintf
      Src: /src/dbus-broker/test/dbus/bench-message.c:120,1
    - Dst: metrics_read_standard_deviation
      Src: /src/dbus-broker/test/dbus/bench-message.c:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 109
    functionDepth: 2
    functionLinenumber: 109
    functionLinenumberEnd: 123
    functionName: test_broadcast
    functionSourceFile: /src/dbus-broker/test/dbus/bench-message.c
    functionUses: 0
    functionsReached:
    - test_message_append_broadcast
    - test_message_append_signal
    - metrics_read_standard_deviation
    - test_message_transaction
    - METRICS_INIT
    - _c_cleanup_
    - fprintf
    linkageType: ''
    returnType: void
    signature: void test_broadcast(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-message.c:127,1
    - Dst: METRICS_INIT
      Src: /src/dbus-broker/test/dbus/bench-message.c:127,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-message.c:128,1
    - Dst: test_message_append_ping
      Src: /src/dbus-broker/test/dbus/bench-message.c:131,1
    - Dst: test_message_append_pong
      Src: /src/dbus-broker/test/dbus/bench-message.c:132,1
    - Dst: test_message_transaction
      Src: /src/dbus-broker/test/dbus/bench-message.c:134,1
    - Dst: fprintf
      Src: /src/dbus-broker/test/dbus/bench-message.c:136,1
    - Dst: metrics_read_standard_deviation
      Src: /src/dbus-broker/test/dbus/bench-message.c:137,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 125
    functionDepth: 2
    functionLinenumber: 125
    functionLinenumberEnd: 139
    functionName: test_replies
    functionSourceFile: /src/dbus-broker/test/dbus/bench-message.c
    functionUses: 0
    functionsReached:
    - metrics_read_standard_deviation
    - test_message_append_pong
    - test_message_transaction
    - test_message_append_ping
    - METRICS_INIT
    - _c_cleanup_
    - fprintf
    linkageType: ''
    returnType: void
    signature: void test_replies(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-message.c:143,1
    - Dst: METRICS_INIT
      Src: /src/dbus-broker/test/dbus/bench-message.c:143,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-message.c:144,1
    - Dst: test_message_append_ping
      Src: /src/dbus-broker/test/dbus/bench-message.c:149,1
    - Dst: test_message_transaction
      Src: /src/dbus-broker/test/dbus/bench-message.c:152,1
    - Dst: fprintf
      Src: /src/dbus-broker/test/dbus/bench-message.c:154,1
    - Dst: metrics_read_standard_deviation
      Src: /src/dbus-broker/test/dbus/bench-message.c:155,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 141
    functionDepth: 2
    functionLinenumber: 141
    functionLinenumberEnd: 157
    functionName: test_pipelining
    functionSourceFile: /src/dbus-broker/test/dbus/bench-message.c
    functionUses: 0
    functionsReached:
    - metrics_read_standard_deviation
    - test_message_transaction
    - test_message_append_ping
    - METRICS_INIT
    - _c_cleanup_
    - fprintf
    linkageType: ''
    returnType: void
    signature: void test_pipelining(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_broadcast
      Src: /src/dbus-broker/test/dbus/bench-message.c:160,1
    - Dst: test_replies
      Src: /src/dbus-broker/test/dbus/bench-message.c:161,1
    - Dst: test_pipelining
      Src: /src/dbus-broker/test/dbus/bench-message.c:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 159
    functionDepth: 3
    functionLinenumber: 159
    functionLinenumberEnd: 163
    functionName: main
    functionSourceFile: /src/dbus-broker/test/dbus/bench-message.c
    functionUses: 0
    functionsReached:
    - test_broadcast
    - test_replies
    - test_pipelining
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-broker.c:11,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-broker.c:18,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-broker.c:19,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-broker.c:20,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 10
    functionDepth: 1
    functionLinenumber: 10
    functionLinenumberEnd: 21
    functionName: test_dummy
    functionSourceFile: /src/dbus-broker/test/dbus/test-broker.c
    functionUses: 0
    functionsReached:
    - _c_cleanup_
    - util_broker_spawn
    - util_broker_terminate
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_dummy(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-broker.c:24,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-broker.c:32,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-broker.c:33,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-broker.c:36,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-broker.c:39,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-broker.c:41,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-broker.c:42,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-broker.c:43,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-broker.c:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 23
    functionDepth: 1
    functionLinenumber: 23
    functionLinenumberEnd: 47
    functionName: test_connect
    functionSourceFile: /src/dbus-broker/test/dbus/test-broker.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - util_broker_terminate
    - sd_bus_get_unique_name
    - _c_cleanup_
    - c_assert
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_connect(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-broker.c:50,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-broker.c:58,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-broker.c:59,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-broker.c:62,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-broker.c:65,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-broker.c:67,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-broker.c:68,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-broker.c:70,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-broker.c:79,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-broker.c:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 83
    functionName: test_self_ping
    functionSourceFile: /src/dbus-broker/test/dbus/test-broker.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_terminate
    - sd_bus_get_unique_name
    - _c_cleanup_
    - c_assert
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_self_ping(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_message_get_error
      Src: /src/dbus-broker/test/dbus/test-broker.c:89,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-broker.c:90,1
    - Dst: sd_event_exit
      Src: /src/dbus-broker/test/dbus/test-broker.c:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - m
    - userdata
    - error
    argTypes:
    - sd_bus_message*
    - void*
    - sd_bus_error*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 93
    functionName: test_ping_pong_fn
    functionSourceFile: /src/dbus-broker/test/dbus/test-broker.c
    functionUses: 0
    functionsReached:
    - sd_bus_message_get_error
    - sd_event_exit
    - c_assert
    linkageType: ''
    returnType: int
    signature: int test_ping_pong_fn(sd_bus_message *m, void *userdata, sd_bus_error
      *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-broker.c:96,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-broker.c:97,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-broker.c:98,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-broker.c:106,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-broker.c:107,1
    - Dst: sd_event_new
      Src: /src/dbus-broker/test/dbus/test-broker.c:111,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-broker.c:112,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-broker.c:117,1
    - Dst: sd_bus_attach_event
      Src: /src/dbus-broker/test/dbus/test-broker.c:118,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-broker.c:119,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-broker.c:124,1
    - Dst: sd_bus_attach_event
      Src: /src/dbus-broker/test/dbus/test-broker.c:125,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-broker.c:126,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-broker.c:133,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-broker.c:134,1
    - Dst: sd_bus_call_method_async
      Src: /src/dbus-broker/test/dbus/test-broker.c:136,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-broker.c:145,1
    - Dst: sd_event_loop
      Src: /src/dbus-broker/test/dbus/test-broker.c:150,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-broker.c:151,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-broker.c:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 155
    functionName: test_ping_pong
    functionSourceFile: /src/dbus-broker/test/dbus/test-broker.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_event_new
    - util_broker_terminate
    - sd_bus_attach_event
    - _c_cleanup_
    - sd_bus_get_unique_name
    - sd_bus_call_method_async
    - c_assert
    - util_broker_connect
    - sd_event_loop
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_ping_pong(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_dummy
      Src: /src/dbus-broker/test/dbus/test-broker.c:158,1
    - Dst: test_connect
      Src: /src/dbus-broker/test/dbus/test-broker.c:159,1
    - Dst: test_self_ping
      Src: /src/dbus-broker/test/dbus/test-broker.c:160,1
    - Dst: test_ping_pong
      Src: /src/dbus-broker/test/dbus/test-broker.c:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 157
    functionDepth: 2
    functionLinenumber: 157
    functionLinenumberEnd: 164
    functionName: main
    functionSourceFile: /src/dbus-broker/test/dbus/test-broker.c
    functionUses: 0
    functionsReached:
    - test_ping_pong
    - test_self_ping
    - test_connect
    - test_dummy
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:11,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:12,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:14,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:15,1
    - Dst: util_broker_connect_monitor
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:17,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:18,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19
      start: 10
    functionDepth: 1
    functionLinenumber: 10
    functionLinenumberEnd: 19
    functionName: test_dummy
    functionSourceFile: /src/dbus-broker/test/dbus/test-lifetime.c
    functionUses: 1
    functionsReached:
    - util_broker_connect_monitor
    - util_broker_spawn
    - util_broker_terminate
    - _c_cleanup_
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_dummy(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:22,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:23,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:25,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:26,1
    - Dst: util_broker_connect_monitor
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:28,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:31,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:33,1
    - Dst: util_broker_consume_method_call
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:36,1
    - Dst: util_broker_consume_method_return
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:37,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:38,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:39,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:41,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:42,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 21
    functionDepth: 1
    functionLinenumber: 21
    functionLinenumberEnd: 45
    functionName: test_client1
    functionSourceFile: /src/dbus-broker/test/dbus/test-lifetime.c
    functionUses: 0
    functionsReached:
    - util_broker_connect_monitor
    - util_broker_spawn
    - util_broker_consume_signal
    - util_broker_consume_method_return
    - util_broker_terminate
    - _c_cleanup_
    - util_broker_consume_method_call
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_client1(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:48,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:49,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:51,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:52,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:54,1
    - Dst: util_broker_disconnect
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:55,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 58
    functionName: test_client2
    functionSourceFile: /src/dbus-broker/test/dbus/test-lifetime.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - util_broker_disconnect
    - util_broker_terminate
    - _c_cleanup_
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_client2(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:61,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:62,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:64,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:65,1
    - Dst: util_broker_connect_monitor
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:67,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:70,1
    - Dst: util_broker_connect_monitor
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:72,1
    - Dst: util_broker_consume_method_call
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:75,1
    - Dst: util_broker_consume_method_return
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:76,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:77,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:78,1
    - Dst: util_broker_consume_method_call
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:80,1
    - Dst: util_broker_consume_method_return
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:81,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:82,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:83,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 86
    functionName: test_monitor
    functionSourceFile: /src/dbus-broker/test/dbus/test-lifetime.c
    functionUses: 0
    functionsReached:
    - util_broker_connect_monitor
    - util_broker_spawn
    - util_broker_consume_signal
    - util_broker_consume_method_return
    - util_broker_terminate
    - _c_cleanup_
    - util_broker_consume_method_call
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_monitor(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:89,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:90,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:93,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:94,1
    - Dst: util_broker_connect_monitor
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:96,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:99,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:100,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:102,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:104,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:107,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:109,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:111,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:114,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:116,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:119,1
    - Dst: util_broker_consume_method_call
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:122,1
    - Dst: util_broker_consume_method_return
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:123,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:124,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:125,1
    - Dst: util_broker_consume_method_call
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:127,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:128,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:129,1
    - Dst: util_broker_consume_method_return
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:130,1
    - Dst: util_broker_consume_method_call
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:132,1
    - Dst: util_broker_consume_method_return
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:133,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:134,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:135,1
    - Dst: util_broker_consume_method_call
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:137,1
    - Dst: util_broker_consume_method_return
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:138,1
    - Dst: util_broker_consume_method_call
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:140,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:141,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:142,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:143,1
    - Dst: util_broker_consume_method_return
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:144,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:146,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:147,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:148,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:149,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:150,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:151,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 43
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 154
    functionName: test_names
    functionSourceFile: /src/dbus-broker/test/dbus/test-lifetime.c
    functionUses: 0
    functionsReached:
    - util_broker_connect_monitor
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_consume_signal
    - util_broker_consume_method_return
    - util_broker_terminate
    - _c_cleanup_
    - c_assert
    - util_broker_consume_method_call
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_names(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_dummy
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:157,1
    - Dst: test_client1
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:158,1
    - Dst: test_client2
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:159,1
    - Dst: test_monitor
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:160,1
    - Dst: test_names
      Src: /src/dbus-broker/test/dbus/test-lifetime.c:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 156
    functionDepth: 2
    functionLinenumber: 156
    functionLinenumberEnd: 162
    functionName: main
    functionSourceFile: /src/dbus-broker/test/dbus/test-lifetime.c
    functionUses: 0
    functionsReached:
    - test_client2
    - test_dummy
    - test_client1
    - test_monitor
    - test_names
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:14,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:17,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:18,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:22,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:23,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:25,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:27,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:30,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:31,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:31,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:36,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:37,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:39,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:41,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:44,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:45,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:45,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:50,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:51,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:53,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:55,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:58,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:59,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:59,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 13
    functionDepth: 1
    functionLinenumber: 13
    functionLinenumberEnd: 63
    functionName: test_unknown
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_terminate
    - _c_cleanup_
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_unknown(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:66,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:69,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:70,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:74,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:75,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:76,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:79,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:82,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:86,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:87,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:88,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:88,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:91,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:94,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:95,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:95,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:100,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:101,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:102,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:105,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:108,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:111,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:112,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:112,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:115,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:118,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:119,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:119,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:122,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:125,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:126,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:126,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:129,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:133,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:134,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:135,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:135,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:140,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:141,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:143,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:146,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:149,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:152,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:155,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 43
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 159
    functionName: test_hello
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_connect_raw
    - util_broker_terminate
    - _c_cleanup_
    - sd_bus_message_read
    - c_assert
    - strcmp
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_hello(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:162,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:165,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:166,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:172,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:173,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:175,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:177,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:180,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:180,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:185,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:186,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:189,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:191,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:192,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:194,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:197,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:199,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:202,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:203,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:204,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:205,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:205,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:207,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:210,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:215,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:216,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:219,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:220,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:222,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:223,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:225,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:228,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:230,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:233,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:235,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:238,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:239,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:240,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:241,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:241,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:243,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:246,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:248,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:251,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:252,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:253,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:254,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:254,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:256,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:259,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:264,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:265,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:268,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:269,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:271,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:272,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:274,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:277,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:279,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:282,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:284,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:287,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:288,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:289,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:290,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:290,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:292,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:295,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:297,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:300,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:301,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:302,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:303,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:303,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:305,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:308,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:313,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:314,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:317,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:318,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:320,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:321,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:322,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:323,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:325,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:328,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:330,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:333,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:335,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:338,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:339,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:340,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:341,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:341,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:343,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:346,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:348,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:351,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:352,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:353,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:354,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:354,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:356,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:359,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:364,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:365,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:367,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:369,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:372,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:373,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:373,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:378,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:379,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:382,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:384,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:385,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:387,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:390,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:391,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:391,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:396,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:397,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:399,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:401,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:404,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:405,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:405,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:408,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 126
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 409
    functionName: test_request_name
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_connect_raw
    - util_broker_terminate
    - sd_bus_get_unique_name
    - _c_cleanup_
    - sd_bus_message_read
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_request_name(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:412,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:415,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:416,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:420,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:421,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:423,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:425,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:428,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:428,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:433,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:434,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:436,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:438,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:441,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:442,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:442,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:444,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:447,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:452,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:453,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:455,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:457,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:460,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:462,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:465,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:467,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:470,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:471,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:471,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:476,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:477,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:480,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:481,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:483,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:484,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:486,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:489,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:491,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:494,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:496,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:499,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:500,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:501,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:502,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:502,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:504,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:507,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:512,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:513,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:515,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:517,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:520,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:521,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:521,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:526,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:527,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:530,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:532,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:533,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:535,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:538,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:539,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:539,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:544,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:545,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:547,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:549,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:552,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:553,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:553,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:556,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 72
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 557
      start: 411
    functionDepth: 1
    functionLinenumber: 411
    functionLinenumberEnd: 557
    functionName: test_release_name
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_connect_raw
    - util_broker_terminate
    - sd_bus_get_unique_name
    - _c_cleanup_
    - sd_bus_message_read
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_release_name(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:560,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:563,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:564,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:568,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:569,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:571,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:573,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:576,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:576,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:581,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:582,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:584,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:586,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:589,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:590,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:590,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:595,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:596,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:599,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:601,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:602,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:604,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:607,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:608,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:609,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:609,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:614,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:615,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:618,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:620,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:621,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:623,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:626,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:628,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:631,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:632,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:633,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:633,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:635,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:638,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:643,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:644,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:647,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:649,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:652,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:653,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:654,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:654,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:659,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:660,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:662,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:664,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:667,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:668,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:668,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:671,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 57
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 672
      start: 559
    functionDepth: 1
    functionLinenumber: 559
    functionLinenumberEnd: 672
    functionName: test_get_name_owner
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_connect_raw
    - util_broker_terminate
    - sd_bus_get_unique_name
    - _c_cleanup_
    - sd_bus_message_read
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_get_name_owner(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:675,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:678,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:679,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:683,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:684,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:686,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:688,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:691,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:691,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:696,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:697,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:700,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:702,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:705,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:706,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:707,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:708,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:713,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:714,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:718,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:720,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:721,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:723,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:726,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:727,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:728,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:729,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:734,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:735,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:738,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:740,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:743,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:745,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:748,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:749,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:750,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:751,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:753,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:756,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:761,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:762,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:765,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:767,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:770,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:771,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:772,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:773,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:778,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:779,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:782,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:784,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:787,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:788,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:789,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:790,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:793,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 62
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 794
      start: 674
    functionDepth: 1
    functionLinenumber: 674
    functionLinenumberEnd: 794
    functionName: test_name_has_owner
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_connect_raw
    - util_broker_terminate
    - sd_bus_get_unique_name
    - _c_cleanup_
    - sd_bus_message_read
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_name_has_owner(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:797,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:800,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:801,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:807,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:808,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:810,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:812,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:815,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:815,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:820,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:821,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:823,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:825,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:828,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:829,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:829,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:834,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:835,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:838,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:840,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:841,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:843,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:846,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:847,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:847,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:854,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:855,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:857,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:859,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:862,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:863,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:863,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:868,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:869,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:871,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:873,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:876,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:877,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:877,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:882,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:883,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:885,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:887,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:890,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:891,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:891,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:894,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 48
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 895
      start: 796
    functionDepth: 1
    functionLinenumber: 796
    functionLinenumberEnd: 895
    functionName: test_start_service_by_name
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_connect_raw
    - util_broker_terminate
    - sd_bus_get_unique_name
    - _c_cleanup_
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_start_service_by_name(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:898,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:901,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:902,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:906,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:907,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:909,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:911,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:914,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:914,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:918,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:920,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:922,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:925,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:928,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 929
      start: 897
    functionDepth: 1
    functionLinenumber: 897
    functionLinenumberEnd: 929
    functionName: test_update_activation_environment
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_connect_raw
    - util_broker_terminate
    - _c_cleanup_
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_update_activation_environment(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:932,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:935,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:936,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:940,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:941,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:943,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:945,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:948,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:948,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:952,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:953,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:957,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:959,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:960,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:963,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:966,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:969,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:972,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:973,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:974,1
    - Dst: sd_bus_message_at_end
      Src: /src/dbus-broker/test/dbus/test-driver.c:976,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:977,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:978,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:979,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:980,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:982,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:983,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:985,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:986,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:992,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:993,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:995,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:996,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:999,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1002,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:1005,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 47
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1006
      start: 931
    functionDepth: 1
    functionLinenumber: 931
    functionLinenumberEnd: 1006
    functionName: test_list_names
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - sd_bus_message_at_end
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_connect_raw
    - util_broker_terminate
    - sd_bus_get_unique_name
    - _c_cleanup_
    - sd_bus_message_exit_container
    - sd_bus_message_read
    - c_assert
    - strcmp
    - sd_bus_message_enter_container
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_list_names(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1009,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:1012,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:1013,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1017,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1018,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:1020,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1022,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1025,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1025,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1029,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1030,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1033,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1036,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1039,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1045,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1048,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:1049,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1050,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:1051,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1052,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1053,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1053,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:1054,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1055,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1058,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1061,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:1064,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1065
      start: 1008
    functionDepth: 1
    functionLinenumber: 1008
    functionLinenumberEnd: 1065
    functionName: test_list_activatable_names
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_connect_raw
    - util_broker_terminate
    - _c_cleanup_
    - sd_bus_message_exit_container
    - sd_bus_message_read
    - c_assert
    - strcmp
    - sd_bus_message_enter_container
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_list_activatable_names(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1068,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:1071,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:1072,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1076,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1077,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:1079,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1081,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1084,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1084,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1089,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1090,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1092,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1094,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1097,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1098,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1098,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1103,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1105,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1107,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1110,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1112,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1115,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:1118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1119
      start: 1067
    functionDepth: 1
    functionLinenumber: 1067
    functionLinenumberEnd: 1119
    functionName: test_add_match
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_connect_raw
    - util_broker_terminate
    - _c_cleanup_
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_add_match(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1122,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:1125,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:1126,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1130,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1131,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:1133,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1135,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1138,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1138,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1143,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1144,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1146,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1148,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1151,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1152,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1152,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1157,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1158,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1160,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1162,1
    - Dst: getenv
      Src: /src/dbus-broker/test/dbus/test-driver.c:1165,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1167,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1168,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1168,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1174,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1175,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1177,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1179,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1182,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1184,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1187,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1189,1
    - Dst: getenv
      Src: /src/dbus-broker/test/dbus/test-driver.c:1192,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1194,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1195,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1195,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1201,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1203,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1205,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1208,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1210,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1213,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1215,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1218,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1220,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1223,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1228,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1230,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1232,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1235,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1237,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1240,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:1243,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 58
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1244
      start: 1121
    functionDepth: 1
    functionLinenumber: 1121
    functionLinenumberEnd: 1244
    functionName: test_remove_match
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - getenv
    - util_broker_connect_raw
    - util_broker_terminate
    - _c_cleanup_
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_remove_match(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1247,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:1250,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:1251,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1255,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1256,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:1258,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1260,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1263,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1263,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1268,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1269,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1272,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1273,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:1275,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1276,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:1278,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1279,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1285,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1288,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1290,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1293,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1296,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1299,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:1300,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1301,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:1302,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1303,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1304,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1304,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:1305,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1306,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1307,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1307,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:1308,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1309,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1311,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1314,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1316,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1319,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1324,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1325,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1328,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:1330,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1331,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1333,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1336,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:1337,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1338,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:1339,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1340,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1341,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1341,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:1342,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1343,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1348,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1349,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1352,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1354,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1357,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:1358,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1359,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:1360,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1361,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1362,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1362,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:1363,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1364,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1369,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1370,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1372,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1374,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1377,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1378,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1378,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1383,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1384,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1386,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1388,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1391,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1392,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1392,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:1395,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 82
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1396
      start: 1246
    functionDepth: 1
    functionLinenumber: 1246
    functionLinenumberEnd: 1396
    functionName: test_list_queued_owners
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_connect_raw
    - util_broker_terminate
    - sd_bus_get_unique_name
    - _c_cleanup_
    - sd_bus_message_exit_container
    - sd_bus_message_read
    - c_assert
    - strcmp
    - sd_bus_message_enter_container
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_list_queued_owners(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1399,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:1402,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:1403,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1407,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1408,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:1410,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1412,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1415,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1415,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1420,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1421,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1424,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1426,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1429,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1431,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1434,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:1435,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1436,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1437,1
    - Dst: getuid
      Src: /src/dbus-broker/test/dbus/test-driver.c:1437,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1439,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1442,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1447,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1448,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1451,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1453,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1456,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:1457,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1458,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1459,1
    - Dst: getuid
      Src: /src/dbus-broker/test/dbus/test-driver.c:1459,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1464,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1465,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1469,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:1471,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1472,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1474,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1477,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:1478,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1479,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1480,1
    - Dst: getuid
      Src: /src/dbus-broker/test/dbus/test-driver.c:1480,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1485,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1486,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1488,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1490,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1493,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1494,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1494,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1499,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1500,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1502,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1504,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1507,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1508,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1508,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:1511,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 58
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1512
      start: 1398
    functionDepth: 1
    functionLinenumber: 1398
    functionLinenumberEnd: 1512
    functionName: test_get_connection_unix_user
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_connect_raw
    - util_broker_terminate
    - sd_bus_get_unique_name
    - _c_cleanup_
    - getuid
    - sd_bus_message_read
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_get_connection_unix_user(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1515,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:1518,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:1519,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1523,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1524,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:1526,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1528,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1531,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1531,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1536,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1537,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1540,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1542,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1545,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1547,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1550,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:1551,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1552,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1553,1
    - Dst: getpid
      Src: /src/dbus-broker/test/dbus/test-driver.c:1553,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1555,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1558,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1563,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1564,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1567,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1569,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1572,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:1573,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1574,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1575,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1580,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1581,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1585,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:1587,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1588,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1590,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1593,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:1594,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1595,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1596,1
    - Dst: getpid
      Src: /src/dbus-broker/test/dbus/test-driver.c:1596,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1601,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1602,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1604,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1606,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1609,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1610,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1610,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1615,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1616,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1618,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1620,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1623,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1624,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1624,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:1627,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 58
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1628
      start: 1514
    functionDepth: 1
    functionLinenumber: 1514
    functionLinenumberEnd: 1628
    functionName: test_get_connection_unix_process_id
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_connect_raw
    - util_broker_terminate
    - sd_bus_get_unique_name
    - _c_cleanup_
    - getpid
    - sd_bus_message_read
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_get_connection_unix_process_id(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1631,1
    - Dst: proc_get_seclabel
      Src: /src/dbus-broker/test/dbus/test-driver.c:1635,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1636,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:1638,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1639,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:1644,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1645,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1647,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:1650,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1651,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - reply
    argTypes:
    - sd_bus_message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1652
      start: 1630
    functionDepth: 1
    functionLinenumber: 1630
    functionLinenumberEnd: 1652
    functionName: test_verify_selinux_context
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - proc_get_seclabel
    - _c_cleanup_
    - sd_bus_message_exit_container
    - sd_bus_message_read
    - c_assert
    - sd_bus_message_enter_container
    linkageType: ''
    returnType: void
    signature: void test_verify_selinux_context(sd_bus_message *reply)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:1660,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1661,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:1663,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:1666,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1667,1
    - Dst: sd_bus_message_skip
      Src: /src/dbus-broker/test/dbus/test-driver.c:1669,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1670,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:1672,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1673,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1675,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1677,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1679,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:1683,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1684,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1686,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1687,1
    - Dst: util_is_reference
      Src: /src/dbus-broker/test/dbus/test-driver.c:1689,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1692,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 1
    argNames:
    - message
    argTypes:
    - sd_bus_message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1699
      start: 1654
    functionDepth: 1
    functionLinenumber: 1654
    functionLinenumberEnd: 1699
    functionName: test_verify_credentials
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_is_reference
    - sd_bus_message_skip
    - sd_bus_message_exit_container
    - sd_bus_message_read
    - c_assert
    - strcmp
    - sd_bus_message_enter_container
    linkageType: ''
    returnType: void
    signature: void test_verify_credentials(sd_bus_message *message)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1702,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:1705,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:1706,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1710,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1711,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:1713,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1715,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1718,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1718,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1723,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1724,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1726,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1728,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1731,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1733,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1736,1
    - Dst: test_verify_credentials
      Src: /src/dbus-broker/test/dbus/test-driver.c:1738,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1740,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1743,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1748,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1749,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1751,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1753,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1756,1
    - Dst: test_verify_credentials
      Src: /src/dbus-broker/test/dbus/test-driver.c:1758,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1763,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1764,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1767,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:1769,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1770,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1772,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1775,1
    - Dst: test_verify_credentials
      Src: /src/dbus-broker/test/dbus/test-driver.c:1777,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1783,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1784,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1786,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1788,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1791,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1792,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1792,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1797,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1798,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1800,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1802,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1805,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1806,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1806,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:1809,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 52
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1810
      start: 1701
    functionDepth: 2
    functionLinenumber: 1701
    functionLinenumberEnd: 1810
    functionName: test_get_connection_credentials
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - test_verify_credentials
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_connect_raw
    - util_broker_terminate
    - sd_bus_get_unique_name
    - _c_cleanup_
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_get_connection_credentials(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1814,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:1817,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:1818,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1822,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1823,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:1825,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1827,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1830,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1830,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1835,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1836,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1837,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1839,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1841,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1844,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1846,1
    - Dst: bus_selinux_is_enabled
      Src: /src/dbus-broker/test/dbus/test-driver.c:1849,1
    - Dst: test_verify_selinux_context
      Src: /src/dbus-broker/test/dbus/test-driver.c:1850,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1852,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1853,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1853,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1856,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1859,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1864,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1865,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1866,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1868,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1870,1
    - Dst: bus_selinux_is_enabled
      Src: /src/dbus-broker/test/dbus/test-driver.c:1873,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1877,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1878,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1878,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1884,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1885,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1886,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1889,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:1891,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1892,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1894,1
    - Dst: bus_selinux_is_enabled
      Src: /src/dbus-broker/test/dbus/test-driver.c:1897,1
    - Dst: test_verify_selinux_context
      Src: /src/dbus-broker/test/dbus/test-driver.c:1898,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1900,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1901,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1901,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1908,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1909,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1911,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1913,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1916,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1917,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1917,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1922,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1923,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1925,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1927,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1930,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1931,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1931,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:1934,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 66
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1935
      start: 1813
    functionDepth: 2
    functionLinenumber: 1813
    functionLinenumberEnd: 1935
    functionName: test_get_connection_selinux_security_context
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - bus_selinux_is_enabled
    - util_broker_connect_raw
    - util_broker_terminate
    - sd_bus_get_unique_name
    - _c_cleanup_
    - c_assert
    - strcmp
    - test_verify_selinux_context
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_get_connection_selinux_security_context(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1938,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:1941,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:1942,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1946,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1947,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:1949,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1951,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1954,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1954,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1959,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1960,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1962,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1964,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1967,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1969,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1972,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1973,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1973,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1975,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1978,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1983,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1984,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:1986,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:1988,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1991,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:1992,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:1992,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1997,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:1998,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2001,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:2003,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2004,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2006,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2009,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2010,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2010,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2015,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2016,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2018,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2020,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2023,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2024,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2024,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2029,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2030,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2032,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2034,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2037,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2038,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2038,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:2041,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 52
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2042
      start: 1937
    functionDepth: 1
    functionLinenumber: 1937
    functionLinenumberEnd: 2042
    functionName: test_get_adt_audit_session_data
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_connect_raw
    - util_broker_terminate
    - sd_bus_get_unique_name
    - _c_cleanup_
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_get_adt_audit_session_data(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2045,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:2048,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:2049,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2053,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2054,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:2056,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2058,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2061,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2061,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2066,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2067,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2070,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2072,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2075,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:2077,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2078,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2079,1
    - Dst: strlen
      Src: /src/dbus-broker/test/dbus/test-driver.c:2079,1
    - Dst: strlen
      Src: /src/dbus-broker/test/dbus/test-driver.c:2081,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2082,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:2086,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2087
      start: 2044
    functionDepth: 1
    functionLinenumber: 2044
    functionLinenumberEnd: 2087
    functionName: test_get_id
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - strlen
    - util_broker_connect_raw
    - util_broker_terminate
    - _c_cleanup_
    - sd_bus_message_read
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_get_id(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2090,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:2093,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:2094,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2098,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2099,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:2101,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2103,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2106,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2106,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2111,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2112,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2115,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2117,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2120,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:2122,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2123,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2124,1
    - Dst: strlen
      Src: /src/dbus-broker/test/dbus/test-driver.c:2124,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:2127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2128
      start: 2089
    functionDepth: 1
    functionLinenumber: 2089
    functionLinenumberEnd: 2128
    functionName: test_introspect
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - strlen
    - util_broker_connect_raw
    - util_broker_terminate
    - _c_cleanup_
    - sd_bus_message_read
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_introspect(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2131,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:2134,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:2135,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2139,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2140,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:2142,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2144,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2147,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2147,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2152,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2154,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2156,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2159,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:2162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2163
      start: 2130
    functionDepth: 1
    functionLinenumber: 2130
    functionLinenumberEnd: 2163
    functionName: test_reload_config
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_connect_raw
    - util_broker_terminate
    - _c_cleanup_
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_reload_config(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2166,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:2169,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:2170,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2174,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2175,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:2177,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2179,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2182,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2182,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2187,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2189,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2191,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2194,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2197,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2200,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2205,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2207,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2209,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2214,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:2217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2218
      start: 2165
    functionDepth: 1
    functionLinenumber: 2165
    functionLinenumberEnd: 2218
    functionName: test_become_monitor
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_connect_raw
    - util_broker_terminate
    - _c_cleanup_
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_become_monitor(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2221,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:2224,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:2225,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2229,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2230,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:2232,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2234,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2237,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2237,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2242,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2244,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2246,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2249,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:2252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2253
      start: 2220
    functionDepth: 1
    functionLinenumber: 2220
    functionLinenumberEnd: 2253
    functionName: test_ping
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_connect_raw
    - util_broker_terminate
    - _c_cleanup_
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_ping(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2256,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:2259,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:2260,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2264,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2265,1
    - Dst: util_broker_connect_raw
      Src: /src/dbus-broker/test/dbus/test-driver.c:2267,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2269,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2272,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2272,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2277,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2278,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2281,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2283,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2286,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:2288,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2289,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2290,1
    - Dst: strlen
      Src: /src/dbus-broker/test/dbus/test-driver.c:2290,1
    - Dst: strlen
      Src: /src/dbus-broker/test/dbus/test-driver.c:2292,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2293,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:2297,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2298
      start: 2255
    functionDepth: 1
    functionLinenumber: 2255
    functionLinenumberEnd: 2298
    functionName: test_get_machine_id
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - strlen
    - util_broker_connect_raw
    - util_broker_terminate
    - _c_cleanup_
    - sd_bus_message_read
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_get_machine_id(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2304,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2305,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2307,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2308,1
    - Dst: sd_bus_message_at_end
      Src: /src/dbus-broker/test/dbus/test-driver.c:2310,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:2313,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2314,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2316,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2320,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2321,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2323,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2324,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2326,1
    - Dst: bus_selinux_is_enabled
      Src: /src/dbus-broker/test/dbus/test-driver.c:2326,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 1
    argNames:
    - message
    argTypes:
    - sd_bus_message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2327
      start: 2300
    functionDepth: 0
    functionLinenumber: 2300
    functionLinenumberEnd: 2327
    functionName: test_verify_property_features
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - bus_selinux_is_enabled
    - sd_bus_message_exit_container
    - sd_bus_message_read
    - c_assert
    - strcmp
    - sd_bus_message_enter_container
    - sd_bus_message_at_end
    linkageType: ''
    returnType: void
    signature: void test_verify_property_features(sd_bus_message *message)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2333,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2334,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2336,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2337,1
    - Dst: sd_bus_message_at_end
      Src: /src/dbus-broker/test/dbus/test-driver.c:2339,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:2342,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2343,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2345,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2349,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2350,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2352,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2353,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2355,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 1
    argNames:
    - message
    argTypes:
    - sd_bus_message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2356
      start: 2329
    functionDepth: 0
    functionLinenumber: 2329
    functionLinenumberEnd: 2356
    functionName: test_verify_property_interfaces
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - sd_bus_message_exit_container
    - sd_bus_message_read
    - c_assert
    - strcmp
    - sd_bus_message_enter_container
    - sd_bus_message_at_end
    linkageType: ''
    returnType: void
    signature: void test_verify_property_interfaces(sd_bus_message *message)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2359,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:2362,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:2363,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2367,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2368,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2370,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2372,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2375,1
    - Dst: test_verify_property_features
      Src: /src/dbus-broker/test/dbus/test-driver.c:2377,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2382,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2383,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2385,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2387,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2390,1
    - Dst: test_verify_property_interfaces
      Src: /src/dbus-broker/test/dbus/test-driver.c:2392,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2397,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2398,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2400,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2402,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2405,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2406,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2406,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2411,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2412,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2414,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2416,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2419,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2420,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2420,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2425,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2426,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2429,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2431,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2434,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2436,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2437,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2439,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:2442,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2443,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2445,1
    - Dst: test_verify_property_features
      Src: /src/dbus-broker/test/dbus/test-driver.c:2446,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2448,1
    - Dst: test_verify_property_interfaces
      Src: /src/dbus-broker/test/dbus/test-driver.c:2449,1
    - Dst: sd_bus_message_skip
      Src: /src/dbus-broker/test/dbus/test-driver.c:2452,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2453,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2456,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2457,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2460,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2461,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2463,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:2466,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 61
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2467
      start: 2358
    functionDepth: 1
    functionLinenumber: 2358
    functionLinenumberEnd: 2467
    functionName: test_properties
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - test_verify_property_interfaces
    - test_verify_property_features
    - sd_bus_message_skip
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_terminate
    - _c_cleanup_
    - sd_bus_message_exit_container
    - sd_bus_message_read
    - c_assert
    - strcmp
    - sd_bus_message_enter_container
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_properties(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2470,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:2473,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:2474,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2478,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2479,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2481,1
    - Dst: sd_bus_message_new_method_call
      Src: /src/dbus-broker/test/dbus/test-driver.c:2483,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2485,1
    - Dst: sd_bus_call
      Src: /src/dbus-broker/test/dbus/test-driver.c:2487,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2488,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2493,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2494,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2495,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2497,1
    - Dst: sd_bus_message_new_method_call
      Src: /src/dbus-broker/test/dbus/test-driver.c:2499,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2501,1
    - Dst: sd_bus_call
      Src: /src/dbus-broker/test/dbus/test-driver.c:2503,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2504,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2505,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2505,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:2508,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2509
      start: 2469
    functionDepth: 1
    functionLinenumber: 2469
    functionLinenumberEnd: 2509
    functionName: test_no_destination
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - sd_bus_message_new_method_call
    - util_broker_spawn
    - util_broker_terminate
    - sd_bus_call
    - _c_cleanup_
    - c_assert
    - strcmp
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_no_destination(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2512,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-driver.c:2515,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-driver.c:2516,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2520,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-driver.c:2521,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2523,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-driver.c:2525,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2533,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2535,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2536,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2538,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/test/dbus/test-driver.c:2541,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2542,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2544,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2545,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2546,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2548,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2549,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2551,1
    - Dst: sd_bus_message_skip
      Src: /src/dbus-broker/test/dbus/test-driver.c:2552,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2553,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2555,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2556,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2559,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2560,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2562,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2563,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2564,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2565,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2566,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2568,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2569,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2571,1
    - Dst: sd_bus_message_skip
      Src: /src/dbus-broker/test/dbus/test-driver.c:2572,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2573,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2575,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2576,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2579,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2580,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2582,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2583,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2584,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2585,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2586,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2587,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2588,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2589,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2590,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2591,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-driver.c:2592,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2593,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2594,1
    - Dst: sd_bus_message_skip
      Src: /src/dbus-broker/test/dbus/test-driver.c:2596,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2597,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2599,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2600,1
    - Dst: sd_bus_message_skip
      Src: /src/dbus-broker/test/dbus/test-driver.c:2602,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2603,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2606,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2607,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/test/dbus/test-driver.c:2610,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-driver.c:2611,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-driver.c:2614,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 64
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2615
      start: 2511
    functionDepth: 1
    functionLinenumber: 2511
    functionLinenumberEnd: 2615
    functionName: test_stats
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - sd_bus_message_skip
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_terminate
    - _c_cleanup_
    - sd_bus_message_exit_container
    - sd_bus_message_read
    - c_assert
    - strcmp
    - sd_bus_message_enter_container
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_stats(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_unknown
      Src: /src/dbus-broker/test/dbus/test-driver.c:2618,1
    - Dst: test_hello
      Src: /src/dbus-broker/test/dbus/test-driver.c:2619,1
    - Dst: test_request_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:2620,1
    - Dst: test_release_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:2621,1
    - Dst: test_get_name_owner
      Src: /src/dbus-broker/test/dbus/test-driver.c:2622,1
    - Dst: test_name_has_owner
      Src: /src/dbus-broker/test/dbus/test-driver.c:2623,1
    - Dst: test_start_service_by_name
      Src: /src/dbus-broker/test/dbus/test-driver.c:2624,1
    - Dst: test_update_activation_environment
      Src: /src/dbus-broker/test/dbus/test-driver.c:2625,1
    - Dst: test_list_names
      Src: /src/dbus-broker/test/dbus/test-driver.c:2626,1
    - Dst: test_list_activatable_names
      Src: /src/dbus-broker/test/dbus/test-driver.c:2627,1
    - Dst: test_add_match
      Src: /src/dbus-broker/test/dbus/test-driver.c:2628,1
    - Dst: test_remove_match
      Src: /src/dbus-broker/test/dbus/test-driver.c:2629,1
    - Dst: test_list_queued_owners
      Src: /src/dbus-broker/test/dbus/test-driver.c:2630,1
    - Dst: test_get_connection_unix_user
      Src: /src/dbus-broker/test/dbus/test-driver.c:2631,1
    - Dst: test_get_connection_unix_process_id
      Src: /src/dbus-broker/test/dbus/test-driver.c:2632,1
    - Dst: test_get_connection_credentials
      Src: /src/dbus-broker/test/dbus/test-driver.c:2633,1
    - Dst: test_get_connection_selinux_security_context
      Src: /src/dbus-broker/test/dbus/test-driver.c:2634,1
    - Dst: test_get_adt_audit_session_data
      Src: /src/dbus-broker/test/dbus/test-driver.c:2635,1
    - Dst: test_get_id
      Src: /src/dbus-broker/test/dbus/test-driver.c:2636,1
    - Dst: test_reload_config
      Src: /src/dbus-broker/test/dbus/test-driver.c:2637,1
    - Dst: test_introspect
      Src: /src/dbus-broker/test/dbus/test-driver.c:2638,1
    - Dst: test_become_monitor
      Src: /src/dbus-broker/test/dbus/test-driver.c:2639,1
    - Dst: test_ping
      Src: /src/dbus-broker/test/dbus/test-driver.c:2640,1
    - Dst: test_get_machine_id
      Src: /src/dbus-broker/test/dbus/test-driver.c:2641,1
    - Dst: test_properties
      Src: /src/dbus-broker/test/dbus/test-driver.c:2642,1
    - Dst: test_no_destination
      Src: /src/dbus-broker/test/dbus/test-driver.c:2643,1
    - Dst: test_stats
      Src: /src/dbus-broker/test/dbus/test-driver.c:2644,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 29
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2647
      start: 2617
    functionDepth: 3
    functionLinenumber: 2617
    functionLinenumberEnd: 2647
    functionName: main
    functionSourceFile: /src/dbus-broker/test/dbus/test-driver.c
    functionUses: 0
    functionsReached:
    - test_ping
    - test_release_name
    - test_introspect
    - test_get_machine_id
    - test_remove_match
    - test_list_names
    - test_list_activatable_names
    - test_name_has_owner
    - test_request_name
    - test_reload_config
    - test_get_id
    - test_stats
    - test_hello
    - test_become_monitor
    - test_start_service_by_name
    - test_update_activation_environment
    - test_get_connection_credentials
    - test_get_connection_unix_process_id
    - test_properties
    - test_get_name_owner
    - test_add_match
    - test_list_queued_owners
    - test_get_adt_audit_session_data
    - test_no_destination
    - test_unknown
    - test_get_connection_unix_user
    - test_get_connection_selinux_security_context
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:11,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:12,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:13,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-matches.c:16,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-matches.c:17,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:19,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:20,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-matches.c:22,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:25,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:27,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:28,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:30,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-matches.c:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 10
    functionDepth: 1
    functionLinenumber: 10
    functionLinenumberEnd: 33
    functionName: test_wildcard
    functionSourceFile: /src/dbus-broker/test/dbus/test-matches.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_consume_signal
    - sd_bus_emit_signal
    - util_broker_terminate
    - _c_cleanup_
    - c_assert
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_wildcard(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:36,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:37,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:38,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:39,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-matches.c:43,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-matches.c:44,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:46,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:47,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-matches.c:49,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:50,1
    - Dst: asprintf
      Src: /src/dbus-broker/test/dbus/test-matches.c:52,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:53,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-matches.c:55,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:58,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:60,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:61,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:63,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-matches.c:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 66
    functionName: test_unique_name
    functionSourceFile: /src/dbus-broker/test/dbus/test-matches.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_consume_signal
    - sd_bus_emit_signal
    - util_broker_terminate
    - sd_bus_get_unique_name
    - _c_cleanup_
    - c_assert
    - asprintf
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_unique_name(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:69,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:70,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:71,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:72,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-matches.c:75,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-matches.c:76,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:78,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:79,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:80,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-matches.c:82,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:85,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-matches.c:87,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:90,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-matches.c:92,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:95,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-matches.c:97,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:100,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-matches.c:102,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:105,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:107,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:108,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:110,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:111,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:113,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-matches.c:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 116
    functionName: test_well_known_name
    functionSourceFile: /src/dbus-broker/test/dbus/test-matches.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_consume_signal
    - sd_bus_emit_signal
    - util_broker_terminate
    - _c_cleanup_
    - c_assert
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_well_known_name(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:119,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:120,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-matches.c:123,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-matches.c:124,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:126,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-matches.c:128,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:131,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:134,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:136,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:139,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:140,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-matches.c:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 143
    functionName: test_driver
    functionSourceFile: /src/dbus-broker/test/dbus/test-matches.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_consume_signal
    - util_broker_terminate
    - _c_cleanup_
    - c_assert
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_driver(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:146,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:147,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-matches.c:150,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-matches.c:151,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:153,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-matches.c:155,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:158,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:161,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:163,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:166,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:167,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-matches.c:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 170
    functionName: test_noc_wildcard
    functionSourceFile: /src/dbus-broker/test/dbus/test-matches.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_consume_signal
    - util_broker_terminate
    - _c_cleanup_
    - c_assert
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_noc_wildcard(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:173,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:175,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:176,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-matches.c:180,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-matches.c:181,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:183,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:184,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/test/dbus/test-matches.c:186,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:187,1
    - Dst: asprintf
      Src: /src/dbus-broker/test/dbus/test-matches.c:189,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:190,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-matches.c:192,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:195,1
    - Dst: sd_bus_flush_close_unref
      Src: /src/dbus-broker/test/dbus/test-matches.c:197,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:199,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-matches.c:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 202
    functionName: test_noc_unique
    functionSourceFile: /src/dbus-broker/test/dbus/test-matches.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_consume_signal
    - sd_bus_flush_close_unref
    - util_broker_terminate
    - sd_bus_get_unique_name
    - _c_cleanup_
    - c_assert
    - asprintf
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_noc_unique(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:205,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:206,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:207,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-matches.c:210,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-matches.c:211,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:213,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:214,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-matches.c:216,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:219,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-matches.c:221,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:224,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-matches.c:226,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:229,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:231,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:232,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-matches.c:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 204
    functionDepth: 1
    functionLinenumber: 204
    functionLinenumberEnd: 235
    functionName: test_noc_well_known
    functionSourceFile: /src/dbus-broker/test/dbus/test-matches.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_consume_signal
    - util_broker_terminate
    - _c_cleanup_
    - c_assert
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_noc_well_known(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:238,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:239,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:240,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-matches.c:243,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-matches.c:244,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:246,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:247,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-matches.c:249,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:252,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-matches.c:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 237
    functionDepth: 1
    functionLinenumber: 237
    functionLinenumberEnd: 259
    functionName: test_noc_driver
    functionSourceFile: /src/dbus-broker/test/dbus/test-matches.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_terminate
    - _c_cleanup_
    - c_assert
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_noc_driver(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:262,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:263,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:264,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-matches.c:267,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-matches.c:268,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:270,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:271,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-matches.c:273,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:276,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:279,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:280,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:283,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:284,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:287,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:289,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:291,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:292,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:294,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-matches.c:296,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 297
    functionName: test_arg
    functionSourceFile: /src/dbus-broker/test/dbus/test-matches.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_consume_signal
    - sd_bus_emit_signal
    - util_broker_terminate
    - _c_cleanup_
    - c_assert
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_arg(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:300,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:301,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:302,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-matches.c:305,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-matches.c:306,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:308,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:309,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-matches.c:311,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:314,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:317,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:318,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:321,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:322,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:323,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:324,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:327,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:328,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:329,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:330,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:333,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:334,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:336,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:337,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:339,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-matches.c:341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 299
    functionDepth: 1
    functionLinenumber: 299
    functionLinenumberEnd: 342
    functionName: test_args
    functionSourceFile: /src/dbus-broker/test/dbus/test-matches.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_consume_signal
    - sd_bus_emit_signal
    - util_broker_terminate
    - _c_cleanup_
    - c_assert
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_args(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:345,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:346,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-matches.c:347,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-matches.c:350,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-matches.c:351,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:353,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/test-matches.c:354,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/test-matches.c:357,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:360,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:363,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:364,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:367,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:368,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:369,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:370,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:371,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:372,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:375,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:376,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:378,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:379,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:380,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:382,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:383,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:384,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:386,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:387,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:388,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:390,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:391,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:392,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:394,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:395,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:396,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:398,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:399,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:400,1
    - Dst: sd_bus_emit_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:402,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-matches.c:403,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/test-matches.c:404,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-matches.c:406,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 407
      start: 344
    functionDepth: 1
    functionLinenumber: 344
    functionLinenumberEnd: 407
    functionName: test_argpath
    functionSourceFile: /src/dbus-broker/test/dbus/test-matches.c
    functionUses: 0
    functionsReached:
    - util_broker_spawn
    - sd_bus_call_method
    - util_broker_consume_signal
    - sd_bus_emit_signal
    - util_broker_terminate
    - _c_cleanup_
    - c_assert
    - util_broker_connect
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_argpath(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_wildcard
      Src: /src/dbus-broker/test/dbus/test-matches.c:410,1
    - Dst: test_unique_name
      Src: /src/dbus-broker/test/dbus/test-matches.c:411,1
    - Dst: test_well_known_name
      Src: /src/dbus-broker/test/dbus/test-matches.c:412,1
    - Dst: test_driver
      Src: /src/dbus-broker/test/dbus/test-matches.c:413,1
    - Dst: test_noc_wildcard
      Src: /src/dbus-broker/test/dbus/test-matches.c:414,1
    - Dst: test_noc_unique
      Src: /src/dbus-broker/test/dbus/test-matches.c:415,1
    - Dst: test_noc_well_known
      Src: /src/dbus-broker/test/dbus/test-matches.c:416,1
    - Dst: test_noc_driver
      Src: /src/dbus-broker/test/dbus/test-matches.c:417,1
    - Dst: test_arg
      Src: /src/dbus-broker/test/dbus/test-matches.c:418,1
    - Dst: test_args
      Src: /src/dbus-broker/test/dbus/test-matches.c:419,1
    - Dst: test_argpath
      Src: /src/dbus-broker/test/dbus/test-matches.c:420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 409
    functionDepth: 2
    functionLinenumber: 409
    functionLinenumberEnd: 421
    functionName: main
    functionSourceFile: /src/dbus-broker/test/dbus/test-matches.c
    functionUses: 0
    functionsReached:
    - test_args
    - test_wildcard
    - test_noc_unique
    - test_noc_well_known
    - test_noc_driver
    - test_unique_name
    - test_driver
    - test_arg
    - test_argpath
    - test_noc_wildcard
    - test_well_known_name
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _body
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 13
    functionDepth: 0
    functionLinenumber: 13
    functionLinenumberEnd: 31
    functionName: TEST_T_MESSAGE
    functionSourceFile: /src/dbus-broker/test/dbus/util-message.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TEST_T_MESSAGE(_body)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: realloc
      Src: /src/dbus-broker/test/dbus/util-message.c:43,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-message.c:44,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/test/dbus/util-message.c:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - buf
    - n_buf
    - data
    - n_data
    argTypes:
    - void**
    - size_t*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 50
    functionName: test_message_append
    functionSourceFile: /src/dbus-broker/test/dbus/util-message.c
    functionUses: 0
    functionsReached:
    - c_assert
    - c_memcpy
    - realloc
    linkageType: ''
    returnType: void
    signature: void test_message_append(void **buf, size_t *n_buf, const void *data,
      size_t n_data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/dbus-broker/test/dbus/util-message.c:54,1
    - Dst: test_message_append
      Src: /src/dbus-broker/test/dbus/util-message.c:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - buf
    - n_buf
    argTypes:
    - void**
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionName: test_message_append_sasl
    functionSourceFile: /src/dbus-broker/test/dbus/util-message.c
    functionUses: 1
    functionsReached:
    - test_message_append
    - strlen
    linkageType: ''
    returnType: void
    signature: void test_message_append_sasl(void **buf, size_t *n_buf)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-message.c:68,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/test/dbus/util-message.c:70,1
    - Dst: c_dvar_is_big_endian
      Src: /src/dbus-broker/test/dbus/util-message.c:71,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/test/dbus/util-message.c:74,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/test/dbus/util-message.c:78,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/test/dbus/util-message.c:82,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/test/dbus/util-message.c:86,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/test/dbus/util-message.c:90,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/test/dbus/util-message.c:94,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/test/dbus/util-message.c:97,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 9
    argNames:
    - var
    - type
    - serial
    - reply_serial
    - sender
    - destination
    - path
    - interface
    - member
    argTypes:
    - CDVar*
    - uint8_t
    - uint32_t
    - uint32_t
    - char*
    - char*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 98
    functionName: test_cdvar_message_header
    functionSourceFile: /src/dbus-broker/test/dbus/util-message.c
    functionUses: 0
    functionsReached:
    - c_assert
    - c_dvar_write
    - c_dvar_is_big_endian
    linkageType: ''
    returnType: void
    signature: "void test_cdvar_message_header(CDVar *var,\n                                      uint8_t
      type,\n                                      uint32_t serial,\n                                      uint32_t
      reply_serial,\n                                      const char *sender,\n                                      const
      char *destination,\n                                      const char *path,\n
      \                                     const char *interface,\n                                      const
      char *member)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/test/dbus/util-message.c:106,1
    - Dst: test_cdvar_message_header
      Src: /src/dbus-broker/test/dbus/util-message.c:108,1
    - Dst: c_dvar_end_write
      Src: /src/dbus-broker/test/dbus/util-message.c:118,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-message.c:119,1
    - Dst: test_message_append
      Src: /src/dbus-broker/test/dbus/util-message.c:121,1
    - Dst: free
      Src: /src/dbus-broker/test/dbus/util-message.c:123,1
    - Dst: c_dvar_deinit
      Src: /src/dbus-broker/test/dbus/util-message.c:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - buf
    - n_buf
    argTypes:
    - void**
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 125
    functionName: test_message_append_hello
    functionSourceFile: /src/dbus-broker/test/dbus/util-message.c
    functionUses: 1
    functionsReached:
    - c_dvar_deinit
    - c_dvar_begin_write
    - test_cdvar_message_header
    - free
    - c_assert
    - test_message_append
    - c_dvar_end_write
    linkageType: ''
    returnType: void
    signature: void test_message_append_hello(void **buf, size_t *n_buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: asprintf
      Src: /src/dbus-broker/test/dbus/util-message.c:136,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-message.c:137,1
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/test/dbus/util-message.c:139,1
    - Dst: test_cdvar_message_header
      Src: /src/dbus-broker/test/dbus/util-message.c:141,1
    - Dst: c_dvar_end_write
      Src: /src/dbus-broker/test/dbus/util-message.c:151,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-message.c:152,1
    - Dst: test_message_append
      Src: /src/dbus-broker/test/dbus/util-message.c:154,1
    - Dst: free
      Src: /src/dbus-broker/test/dbus/util-message.c:156,1
    - Dst: free
      Src: /src/dbus-broker/test/dbus/util-message.c:157,1
    - Dst: c_dvar_deinit
      Src: /src/dbus-broker/test/dbus/util-message.c:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 3
    argNames:
    - buf
    - n_buf
    - sender_id
    argTypes:
    - void**
    - size_t*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 159
    functionName: test_message_append_broadcast
    functionSourceFile: /src/dbus-broker/test/dbus/util-message.c
    functionUses: 1
    functionsReached:
    - c_dvar_deinit
    - c_dvar_begin_write
    - test_cdvar_message_header
    - free
    - c_assert
    - asprintf
    - test_message_append
    - c_dvar_end_write
    linkageType: ''
    returnType: void
    signature: "void test_message_append_broadcast(void **buf,\n                                   size_t
      *n_buf,\n                                   uint64_t sender_id)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/test/dbus/util-message.c:171,1
    - Dst: test_cdvar_message_header
      Src: /src/dbus-broker/test/dbus/util-message.c:173,1
    - Dst: c_dvar_end_write
      Src: /src/dbus-broker/test/dbus/util-message.c:183,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-message.c:184,1
    - Dst: test_message_append
      Src: /src/dbus-broker/test/dbus/util-message.c:186,1
    - Dst: free
      Src: /src/dbus-broker/test/dbus/util-message.c:188,1
    - Dst: c_dvar_deinit
      Src: /src/dbus-broker/test/dbus/util-message.c:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 5
    argNames:
    - buf
    - n_buf
    - serial
    - sender
    - destination
    argTypes:
    - void**
    - size_t*
    - uint32_t
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 190
    functionName: test_message_append_ping2
    functionSourceFile: /src/dbus-broker/test/dbus/util-message.c
    functionUses: 0
    functionsReached:
    - c_dvar_deinit
    - c_dvar_begin_write
    - test_cdvar_message_header
    - free
    - c_assert
    - test_message_append
    - c_dvar_end_write
    linkageType: ''
    returnType: void
    signature: "void test_message_append_ping2(void **buf,\n                              size_t
      *n_buf,\n                              uint32_t serial,\n                              const
      char *sender,\n                              const char *destination)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: asprintf
      Src: /src/dbus-broker/test/dbus/util-message.c:201,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-message.c:202,1
    - Dst: asprintf
      Src: /src/dbus-broker/test/dbus/util-message.c:204,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-message.c:205,1
    - Dst: test_message_append_ping2
      Src: /src/dbus-broker/test/dbus/util-message.c:207,1
    - Dst: free
      Src: /src/dbus-broker/test/dbus/util-message.c:209,1
    - Dst: free
      Src: /src/dbus-broker/test/dbus/util-message.c:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 5
    argNames:
    - buf
    - n_buf
    - serial
    - sender_id
    - destination_id
    argTypes:
    - void**
    - size_t*
    - uint32_t
    - uint64_t
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 192
    functionDepth: 2
    functionLinenumber: 192
    functionLinenumberEnd: 211
    functionName: test_message_append_ping
    functionSourceFile: /src/dbus-broker/test/dbus/util-message.c
    functionUses: 3
    functionsReached:
    - c_assert
    - asprintf
    - test_message_append_ping2
    - free
    linkageType: ''
    returnType: void
    signature: "void test_message_append_ping(void **buf,\n                              size_t
      *n_buf,\n                              uint32_t serial,\n                              uint64_t
      sender_id,\n                              uint64_t destination_id)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: asprintf
      Src: /src/dbus-broker/test/dbus/util-message.c:226,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-message.c:227,1
    - Dst: asprintf
      Src: /src/dbus-broker/test/dbus/util-message.c:229,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-message.c:230,1
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/test/dbus/util-message.c:232,1
    - Dst: test_cdvar_message_header
      Src: /src/dbus-broker/test/dbus/util-message.c:234,1
    - Dst: c_dvar_end_write
      Src: /src/dbus-broker/test/dbus/util-message.c:244,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-message.c:245,1
    - Dst: test_message_append
      Src: /src/dbus-broker/test/dbus/util-message.c:247,1
    - Dst: free
      Src: /src/dbus-broker/test/dbus/util-message.c:249,1
    - Dst: free
      Src: /src/dbus-broker/test/dbus/util-message.c:250,1
    - Dst: free
      Src: /src/dbus-broker/test/dbus/util-message.c:251,1
    - Dst: c_dvar_deinit
      Src: /src/dbus-broker/test/dbus/util-message.c:252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 6
    argNames:
    - buf
    - n_buf
    - serial
    - reply_serial
    - sender_id
    - destination_id
    argTypes:
    - void**
    - size_t*
    - uint32_t
    - uint32_t
    - uint64_t
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 213
    functionDepth: 1
    functionLinenumber: 213
    functionLinenumberEnd: 253
    functionName: test_message_append_pong
    functionSourceFile: /src/dbus-broker/test/dbus/util-message.c
    functionUses: 1
    functionsReached:
    - c_dvar_deinit
    - c_dvar_begin_write
    - test_cdvar_message_header
    - free
    - c_assert
    - asprintf
    - test_message_append
    - c_dvar_end_write
    linkageType: ''
    returnType: void
    signature: "void test_message_append_pong(void **buf,\n                              size_t
      *n_buf,\n                              uint32_t serial,\n                              uint32_t
      reply_serial,\n                              uint64_t sender_id,\n                              uint64_t
      destination_id)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: asprintf
      Src: /src/dbus-broker/test/dbus/util-message.c:266,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-message.c:267,1
    - Dst: asprintf
      Src: /src/dbus-broker/test/dbus/util-message.c:269,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-message.c:270,1
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/test/dbus/util-message.c:272,1
    - Dst: test_cdvar_message_header
      Src: /src/dbus-broker/test/dbus/util-message.c:274,1
    - Dst: c_dvar_end_write
      Src: /src/dbus-broker/test/dbus/util-message.c:284,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-message.c:285,1
    - Dst: test_message_append
      Src: /src/dbus-broker/test/dbus/util-message.c:287,1
    - Dst: free
      Src: /src/dbus-broker/test/dbus/util-message.c:289,1
    - Dst: free
      Src: /src/dbus-broker/test/dbus/util-message.c:290,1
    - Dst: free
      Src: /src/dbus-broker/test/dbus/util-message.c:291,1
    - Dst: c_dvar_deinit
      Src: /src/dbus-broker/test/dbus/util-message.c:292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 4
    argNames:
    - buf
    - n_buf
    - sender_id
    - destination_id
    argTypes:
    - void**
    - size_t*
    - uint64_t
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 293
    functionName: test_message_append_signal
    functionSourceFile: /src/dbus-broker/test/dbus/util-message.c
    functionUses: 1
    functionsReached:
    - c_dvar_deinit
    - c_dvar_begin_write
    - test_cdvar_message_header
    - free
    - c_assert
    - asprintf
    - test_message_append
    - c_dvar_end_write
    linkageType: ''
    returnType: void
    signature: "void test_message_append_signal(void **buf,\n                                size_t
      *n_buf,\n                                uint64_t sender_id,\n                                uint64_t
      destination_id)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: C_DVAR_T_INIT
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:30,1
    - Dst: C_DVAR_T_TUPLE2
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:31,1
    - Dst: C_DVAR_T_TUPLE7
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:32,1
    - Dst: C_DVAR_T_ARRAY
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:39,1
    - Dst: C_DVAR_T_TUPLE2
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:40,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:50,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:51,1
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:56,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:58,1
    - Dst: c_dvar_is_big_endian
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:59,1
    - Dst: c_dvar_end_write
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:68,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:69,1
    - Dst: message_new_outgoing
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:71,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:72,1
    - Dst: c_memset
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:77,1
    - Dst: fdlist_new_with_fds
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:78,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:79,1
    - Dst: connection_queue
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:82,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 3
    argNames:
    - c
    - unix_fds
    - n_fds
    argTypes:
    - Connection*
    - unsigned int
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 84
    functionName: test_fd_stream_send
    functionSourceFile: /src/dbus-broker/test/dbus/test-fdstream.c
    functionUses: 0
    functionsReached:
    - C_DVAR_T_TUPLE7
    - c_dvar_begin_write
    - fdlist_new_with_fds
    - c_dvar_is_big_endian
    - connection_queue
    - _c_cleanup_
    - message_new_outgoing
    - c_memset
    - c_dvar_write
    - c_assert
    - C_DVAR_T_TUPLE2
    - C_DVAR_T_INIT
    - C_DVAR_T_ARRAY
    - c_dvar_end_write
    linkageType: ''
    returnType: void
    signature: void test_fd_stream_send(Connection *c, unsigned int unix_fds, unsigned
      int n_fds)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C_DVAR_T_INIT
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:88,1
    - Dst: C_DVAR_T_TUPLE2
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:89,1
    - Dst: C_DVAR_T_TUPLE7
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:90,1
    - Dst: C_DVAR_T_ARRAY
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:97,1
    - Dst: C_DVAR_T_TUPLE2
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:98,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:108,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:109,1
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:114,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:116,1
    - Dst: c_dvar_is_big_endian
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:117,1
    - Dst: c_dvar_end_write
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:124,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:125,1
    - Dst: message_new_outgoing
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:127,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:128,1
    - Dst: connection_queue
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:130,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - c
    argTypes:
    - Connection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 132
    functionName: test_fd_stream_hello
    functionSourceFile: /src/dbus-broker/test/dbus/test-fdstream.c
    functionUses: 0
    functionsReached:
    - C_DVAR_T_TUPLE7
    - c_dvar_begin_write
    - c_dvar_is_big_endian
    - connection_queue
    - _c_cleanup_
    - message_new_outgoing
    - c_dvar_write
    - c_assert
    - C_DVAR_T_TUPLE2
    - C_DVAR_T_INIT
    - C_DVAR_T_ARRAY
    - c_dvar_end_write
    linkageType: ''
    returnType: void
    signature: void test_fd_stream_hello(Connection *c)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:135,1
    - Dst: connection_dispatch
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:138,1
    - Dst: dispatch_file_events
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:138,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:139,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:142,1
    - Dst: connection_dequeue
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:144,1
    - Dst: message_parse_metadata
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:149,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:150,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:151,1
    - Dst: fdlist_count
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:151,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:155,1
    - Dst: strcmp
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:155,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:156,1
    - Dst: test_fd_stream_send
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:160,1
    - Dst: test_fd_stream_send
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:162,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:167,1
    - Dst: test_fd_stream_send
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:171,1
    - Dst: test_fd_stream_send
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:173,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:178,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:179,1
    - Dst: connection_shutdown
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:182,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:185,1
    - Dst: connection_shutdown
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:191,1
    - Dst: connection_is_running
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:192,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:195,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 45
    argCount: 1
    argNames:
    - file
    argTypes:
    - DispatchFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 197
    functionName: test_fd_stream_fn
    functionSourceFile: /src/dbus-broker/test/dbus/test-fdstream.c
    functionUses: 0
    functionsReached:
    - connection_shutdown
    - connection_dequeue
    - fdlist_count
    - message_parse_metadata
    - _c_cleanup_
    - connection_dispatch
    - c_container_of
    - dispatch_file_events
    - test_fd_stream_send
    - c_assert
    - strcmp
    - connection_is_running
    linkageType: ''
    returnType: int
    signature: int test_fd_stream_fn(DispatchFile *file)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:200,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:201,1
    - Dst: DISPATCH_CONTEXT_NULL
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:201,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:202,1
    - Dst: CONNECTION_NULL
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:202,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:203,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:228,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:229,1
    - Dst: dispatch_context_init
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:233,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:234,1
    - Dst: util_broker_connect_fd
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:236,1
    - Dst: connection_init_client
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:238,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:239,1
    - Dst: connection_open
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:241,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:242,1
    - Dst: test_fd_stream_hello
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:247,1
    - Dst: test_fd_stream_send
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:249,1
    - Dst: test_fd_stream_send
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:250,1
    - Dst: dispatch_context_dispatch
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:257,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:258,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:262,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 199
    functionDepth: 2
    functionLinenumber: 199
    functionLinenumberEnd: 263
    functionName: test_fd_stream
    functionSourceFile: /src/dbus-broker/test/dbus/test-fdstream.c
    functionUses: 0
    functionsReached:
    - CONNECTION_NULL
    - connection_init_client
    - connection_open
    - util_broker_spawn
    - dispatch_context_dispatch
    - test_fd_stream_hello
    - util_broker_connect_fd
    - util_broker_terminate
    - _c_cleanup_
    - dispatch_context_init
    - test_fd_stream_send
    - c_assert
    - DISPATCH_CONTEXT_NULL
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_fd_stream(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: util_is_reference
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:277,1
    - Dst: test_fd_stream
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:285,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:287,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:288,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:291,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/test-fdstream.c:293,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 265
    functionDepth: 3
    functionLinenumber: 265
    functionLinenumberEnd: 297
    functionName: main
    functionSourceFile: /src/dbus-broker/test/dbus/test-fdstream.c
    functionUses: 0
    functionsReached:
    - c_assert
    - util_is_reference
    - test_fd_stream
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/tool-flood.c:14,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/tool-flood.c:15,1
    - Dst: test_message_append_sasl
      Src: /src/dbus-broker/test/dbus/tool-flood.c:22,1
    - Dst: test_message_append_hello
      Src: /src/dbus-broker/test/dbus/tool-flood.c:23,1
    - Dst: socket
      Src: /src/dbus-broker/test/dbus/tool-flood.c:25,1
    - Dst: assert
      Src: /src/dbus-broker/test/dbus/tool-flood.c:26,1
    - Dst: strcpy
      Src: /src/dbus-broker/test/dbus/tool-flood.c:29,1
    - Dst: connect
      Src: /src/dbus-broker/test/dbus/tool-flood.c:31,1
    - Dst: strlen
      Src: /src/dbus-broker/test/dbus/tool-flood.c:31,1
    - Dst: assert
      Src: /src/dbus-broker/test/dbus/tool-flood.c:32,1
    - Dst: write
      Src: /src/dbus-broker/test/dbus/tool-flood.c:34,1
    - Dst: assert
      Src: /src/dbus-broker/test/dbus/tool-flood.c:35,1
    - Dst: recv
      Src: /src/dbus-broker/test/dbus/tool-flood.c:37,1
    - Dst: assert
      Src: /src/dbus-broker/test/dbus/tool-flood.c:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 1
    argNames:
    - fdp
    argTypes:
    - int*
    assertStmts:
    - condition: (fd >= 0)
      pos:
        line_end: 25
        line_start: 25
        source_file: /src/dbus-broker/test/dbus/tool-flood.c
    - condition: (r >= 0)
      pos:
        line_end: 31
        line_start: 31
        source_file: /src/dbus-broker/test/dbus/tool-flood.c
    - condition: (len == (ssize_t)n_hello)
      pos:
        line_end: 34
        line_start: 34
        source_file: /src/dbus-broker/test/dbus/tool-flood.c
    - condition: (len == (ssize_t)sizeof(reply))
      pos:
        line_end: 37
        line_start: 37
        source_file: /src/dbus-broker/test/dbus/tool-flood.c
    constantsTouched: []
    func_position:
      end: 42
      start: 13
    functionDepth: 2
    functionLinenumber: 13
    functionLinenumberEnd: 42
    functionName: test_connect_system_blocking_fd
    functionSourceFile: /src/dbus-broker/test/dbus/tool-flood.c
    functionUses: 0
    functionsReached:
    - strcpy
    - recv
    - test_message_append_hello
    - assert
    - connect
    - strlen
    - socket
    - _c_cleanup_
    - write
    - test_message_append_sasl
    linkageType: ''
    returnType: void
    signature: void test_connect_system_blocking_fd(int *fdp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/tool-flood.c:45,1
    - Dst: test_connect_system_blocking_fd
      Src: /src/dbus-broker/test/dbus/tool-flood.c:48,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/tool-flood.c:51,1
    - Dst: test_message_append_ping2
      Src: /src/dbus-broker/test/dbus/tool-flood.c:55,1
    - Dst: write
      Src: /src/dbus-broker/test/dbus/tool-flood.c:57,1
    - Dst: assert
      Src: /src/dbus-broker/test/dbus/tool-flood.c:58,1
    - Dst: fprintf
      Src: /src/dbus-broker/test/dbus/tool-flood.c:61,1
    - Dst: assert
      Src: /src/dbus-broker/test/dbus/tool-flood.c:63,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - destination
    argTypes:
    - char*
    assertStmts:
    - condition: (len == (ssize_t)n_ping)
      pos:
        line_end: 57
        line_start: 57
        source_file: /src/dbus-broker/test/dbus/tool-flood.c
    - condition: (serial)
      pos:
        line_end: 62
        line_start: 62
        source_file: /src/dbus-broker/test/dbus/tool-flood.c
    constantsTouched: []
    func_position:
      end: 65
      start: 44
    functionDepth: 3
    functionLinenumber: 44
    functionLinenumberEnd: 65
    functionName: test_flood
    functionSourceFile: /src/dbus-broker/test/dbus/tool-flood.c
    functionUses: 0
    functionsReached:
    - test_message_append_ping2
    - assert
    - test_connect_system_blocking_fd
    - _c_cleanup_
    - write
    - fprintf
    linkageType: ''
    returnType: void
    signature: void test_flood(const char *destination)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/dbus-broker/test/dbus/tool-flood.c:68,1
    - Dst: test_flood
      Src: /src/dbus-broker/test/dbus/tool-flood.c:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts:
    - condition: (argc == 2)
      pos:
        line_end: 67
        line_start: 67
        source_file: /src/dbus-broker/test/dbus/tool-flood.c
    constantsTouched: []
    func_position:
      end: 71
      start: 67
    functionDepth: 4
    functionLinenumber: 67
    functionLinenumberEnd: 71
    functionName: main
    functionSourceFile: /src/dbus-broker/test/dbus/tool-flood.c
    functionUses: 0
    functionsReached:
    - test_flood
    - assert
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-connect.c:17,1
    - Dst: socket
      Src: /src/dbus-broker/test/dbus/bench-connect.c:20,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/bench-connect.c:21,1
    - Dst: connect
      Src: /src/dbus-broker/test/dbus/bench-connect.c:23,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/bench-connect.c:24,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - broker
    - fdp
    argTypes:
    - Broker*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 16
    functionDepth: 0
    functionLinenumber: 16
    functionLinenumberEnd: 28
    functionName: test_connect_blocking_fd
    functionSourceFile: /src/dbus-broker/test/dbus/bench-connect.c
    functionUses: 1
    functionsReached:
    - c_assert
    - _c_cleanup_
    - connect
    - socket
    linkageType: ''
    returnType: void
    signature: void test_connect_blocking_fd(Broker *broker, int *fdp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-connect.c:31,1
    - Dst: util_broker_new
      Src: /src/dbus-broker/test/dbus/bench-connect.c:36,1
    - Dst: util_broker_spawn
      Src: /src/dbus-broker/test/dbus/bench-connect.c:37,1
    - Dst: util_broker_settle
      Src: /src/dbus-broker/test/dbus/bench-connect.c:38,1
    - Dst: metrics_sample_start
      Src: /src/dbus-broker/test/dbus/bench-connect.c:40,1
    - Dst: test_connect_blocking_fd
      Src: /src/dbus-broker/test/dbus/bench-connect.c:42,1
    - Dst: write
      Src: /src/dbus-broker/test/dbus/bench-connect.c:44,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/bench-connect.c:45,1
    - Dst: recv
      Src: /src/dbus-broker/test/dbus/bench-connect.c:47,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/bench-connect.c:48,1
    - Dst: metrics_sample_end
      Src: /src/dbus-broker/test/dbus/bench-connect.c:50,1
    - Dst: c_close
      Src: /src/dbus-broker/test/dbus/bench-connect.c:52,1
    - Dst: util_broker_terminate
      Src: /src/dbus-broker/test/dbus/bench-connect.c:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 4
    argNames:
    - metrics
    - input
    - n_input
    - n_output
    argTypes:
    - Metrics*
    - void*
    - ssize_t
    - ssize_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 55
    functionName: test_connect_one
    functionSourceFile: /src/dbus-broker/test/dbus/bench-connect.c
    functionUses: 0
    functionsReached:
    - c_close
    - recv
    - util_broker_spawn
    - test_connect_blocking_fd
    - metrics_sample_start
    - util_broker_terminate
    - _c_cleanup_
    - write
    - c_assert
    - metrics_sample_end
    - util_broker_settle
    - util_broker_new
    linkageType: ''
    returnType: void
    signature: void test_connect_one(Metrics *metrics, void *input, ssize_t n_input,
      ssize_t n_output)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-connect.c:58,1
    - Dst: METRICS_INIT
      Src: /src/dbus-broker/test/dbus/bench-connect.c:58,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-connect.c:59,1
    - Dst: test_message_append_sasl
      Src: /src/dbus-broker/test/dbus/bench-connect.c:62,1
    - Dst: test_connect_one
      Src: /src/dbus-broker/test/dbus/bench-connect.c:65,1
    - Dst: fprintf
      Src: /src/dbus-broker/test/dbus/bench-connect.c:67,1
    - Dst: metrics_read_standard_deviation
      Src: /src/dbus-broker/test/dbus/bench-connect.c:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 57
    functionDepth: 2
    functionLinenumber: 57
    functionLinenumberEnd: 69
    functionName: test_sasl
    functionSourceFile: /src/dbus-broker/test/dbus/bench-connect.c
    functionUses: 0
    functionsReached:
    - test_connect_one
    - metrics_read_standard_deviation
    - METRICS_INIT
    - _c_cleanup_
    - test_message_append_sasl
    - fprintf
    linkageType: ''
    returnType: void
    signature: void test_sasl(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-connect.c:72,1
    - Dst: METRICS_INIT
      Src: /src/dbus-broker/test/dbus/bench-connect.c:72,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-connect.c:73,1
    - Dst: test_message_append_sasl
      Src: /src/dbus-broker/test/dbus/bench-connect.c:76,1
    - Dst: test_message_append_hello
      Src: /src/dbus-broker/test/dbus/bench-connect.c:77,1
    - Dst: test_connect_one
      Src: /src/dbus-broker/test/dbus/bench-connect.c:80,1
    - Dst: fprintf
      Src: /src/dbus-broker/test/dbus/bench-connect.c:82,1
    - Dst: metrics_read_standard_deviation
      Src: /src/dbus-broker/test/dbus/bench-connect.c:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 71
    functionDepth: 2
    functionLinenumber: 71
    functionLinenumberEnd: 84
    functionName: test_hello
    functionSourceFile: /src/dbus-broker/test/dbus/bench-connect.c
    functionUses: 1
    functionsReached:
    - test_message_append_hello
    - test_connect_one
    - metrics_read_standard_deviation
    - METRICS_INIT
    - _c_cleanup_
    - test_message_append_sasl
    - fprintf
    linkageType: ''
    returnType: void
    signature: void test_hello(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-connect.c:87,1
    - Dst: METRICS_INIT
      Src: /src/dbus-broker/test/dbus/bench-connect.c:87,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/bench-connect.c:88,1
    - Dst: test_message_append_sasl
      Src: /src/dbus-broker/test/dbus/bench-connect.c:91,1
    - Dst: test_message_append_hello
      Src: /src/dbus-broker/test/dbus/bench-connect.c:92,1
    - Dst: test_message_append_signal
      Src: /src/dbus-broker/test/dbus/bench-connect.c:93,1
    - Dst: test_connect_one
      Src: /src/dbus-broker/test/dbus/bench-connect.c:96,1
    - Dst: fprintf
      Src: /src/dbus-broker/test/dbus/bench-connect.c:98,1
    - Dst: metrics_read_standard_deviation
      Src: /src/dbus-broker/test/dbus/bench-connect.c:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 86
    functionDepth: 2
    functionLinenumber: 86
    functionLinenumberEnd: 100
    functionName: test_transaction
    functionSourceFile: /src/dbus-broker/test/dbus/bench-connect.c
    functionUses: 0
    functionsReached:
    - test_message_append_signal
    - test_message_append_hello
    - test_connect_one
    - metrics_read_standard_deviation
    - METRICS_INIT
    - _c_cleanup_
    - test_message_append_sasl
    - fprintf
    linkageType: ''
    returnType: void
    signature: void test_transaction(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_sasl
      Src: /src/dbus-broker/test/dbus/bench-connect.c:103,1
    - Dst: test_hello
      Src: /src/dbus-broker/test/dbus/bench-connect.c:104,1
    - Dst: test_transaction
      Src: /src/dbus-broker/test/dbus/bench-connect.c:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 102
    functionDepth: 3
    functionLinenumber: 102
    functionLinenumberEnd: 106
    functionName: main
    functionSourceFile: /src/dbus-broker/test/dbus/bench-connect.c
    functionUses: 0
    functionsReached:
    - test_sasl
    - test_transaction
    - test_hello
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getenv
      Src: /src/dbus-broker/test/dbus/util-broker.c:22,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 21
    functionDepth: 0
    functionLinenumber: 21
    functionLinenumberEnd: 23
    functionName: util_is_reference
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 2
    functionsReached:
    - getenv
    linkageType: ''
    returnType: bool
    signature: bool util_is_reference(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:26,1
    - Dst: sd_event_default
      Src: /src/dbus-broker/test/dbus/util-broker.c:30,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:31,1
    - Dst: pthread_sigmask
      Src: /src/dbus-broker/test/dbus/util-broker.c:33,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:34,1
    - Dst: sigismember
      Src: /src/dbus-broker/test/dbus/util-broker.c:34,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:35,1
    - Dst: sigismember
      Src: /src/dbus-broker/test/dbus/util-broker.c:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - eventp
    argTypes:
    - sd_event**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 39
    functionName: util_event_new
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 0
    functionsReached:
    - pthread_sigmask
    - _c_cleanup_
    - sd_event_default
    - sigismember
    - c_assert
    linkageType: ''
    returnType: void
    signature: void util_event_new(sd_event **eventp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sd_event_exit
      Src: /src/dbus-broker/test/dbus/util-broker.c:51,1
    - Dst: sd_event_source_get_event
      Src: /src/dbus-broker/test/dbus/util-broker.c:51,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - source
    - si
    - userdata
    argTypes:
    - sd_event_source*
    - siginfo_t*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 52
    functionName: util_event_sigchld
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 0
    functionsReached:
    - sd_event_exit
    - sd_event_source_get_event
    linkageType: ''
    returnType: int
    signature: int util_event_sigchld(sd_event_source *source, const siginfo_t *si,
      void *userdata)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/test/dbus/util-broker.c:69,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:70,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/test/dbus/util-broker.c:72,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:73,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/test/dbus/util-broker.c:77,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:78,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/test/dbus/util-broker.c:80,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:81,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/test/dbus/util-broker.c:84,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:85,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/test/dbus/util-broker.c:87,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:88,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/test/dbus/util-broker.c:97,1
    - Dst: UINT64_C
      Src: /src/dbus-broker/test/dbus/util-broker.c:99,1
    - Dst: UINT64_C
      Src: /src/dbus-broker/test/dbus/util-broker.c:100,1
    - Dst: UINT64_C
      Src: /src/dbus-broker/test/dbus/util-broker.c:101,1
    - Dst: UINT64_C
      Src: /src/dbus-broker/test/dbus/util-broker.c:101,1
    - Dst: UINT64_C
      Src: /src/dbus-broker/test/dbus/util-broker.c:102,1
    - Dst: UINT64_C
      Src: /src/dbus-broker/test/dbus/util-broker.c:102,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:103,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/test/dbus/util-broker.c:105,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:106,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/test/dbus/util-broker.c:108,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:109,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/test/dbus/util-broker.c:111,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:112,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/test/dbus/util-broker.c:117,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:118,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/test/dbus/util-broker.c:120,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:121,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/test/dbus/util-broker.c:126,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:127,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/test/dbus/util-broker.c:129,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:130,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/test/dbus/util-broker.c:135,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:136,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/test/dbus/util-broker.c:141,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:142,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/test/dbus/util-broker.c:145,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:146,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/test/dbus/util-broker.c:148,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 43
    argCount: 1
    argNames:
    - m
    argTypes:
    - sd_bus_message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 152
    functionName: util_append_policy
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 0
    functionsReached:
    - sd_bus_message_append
    - sd_bus_message_open_container
    - UINT64_C
    - sd_bus_message_close_container
    - c_assert
    linkageType: ''
    returnType: int
    signature: int util_append_policy(sd_bus_message *m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:156,1
    - Dst: sd_bus_message_get_bus
      Src: /src/dbus-broker/test/dbus/util-broker.c:159,1
    - Dst: sd_bus_message_new_method_call
      Src: /src/dbus-broker/test/dbus/util-broker.c:161,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:167,1
    - Dst: util_append_policy
      Src: /src/dbus-broker/test/dbus/util-broker.c:169,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:170,1
    - Dst: sd_bus_call
      Src: /src/dbus-broker/test/dbus/util-broker.c:172,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:173,1
    - Dst: sd_bus_reply_method_return
      Src: /src/dbus-broker/test/dbus/util-broker.c:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 3
    argNames:
    - message
    - userdata
    - error
    argTypes:
    - sd_bus_message*
    - void*
    - sd_bus_error*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 176
    functionName: util_method_reload_config
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 0
    functionsReached:
    - sd_bus_message_new_method_call
    - sd_bus_call
    - _c_cleanup_
    - c_assert
    - sd_bus_message_get_bus
    - sd_bus_reply_method_return
    - util_append_policy
    linkageType: ''
    returnType: int
    signature: int util_method_reload_config(sd_bus_message *message, void *userdata,
      sd_bus_error *error)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:187,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:188,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:189,1
    - Dst: socketpair
      Src: /src/dbus-broker/test/dbus/util-broker.c:194,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:195,1
    - Dst: fork
      Src: /src/dbus-broker/test/dbus/util-broker.c:197,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:198,1
    - Dst: c_close
      Src: /src/dbus-broker/test/dbus/util-broker.c:199,1
    - Dst: fcntl
      Src: /src/dbus-broker/test/dbus/util-broker.c:203,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:204,1
    - Dst: fcntl
      Src: /src/dbus-broker/test/dbus/util-broker.c:205,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:206,1
    - Dst: asprintf
      Src: /src/dbus-broker/test/dbus/util-broker.c:208,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:209,1
    - Dst: getenv
      Src: /src/dbus-broker/test/dbus/util-broker.c:211,1
    - Dst: execl
      Src: /src/dbus-broker/test/dbus/util-broker.c:212,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:221,1
    - Dst: abort
      Src: /src/dbus-broker/test/dbus/util-broker.c:222,1
    - Dst: sd_event_add_child
      Src: /src/dbus-broker/test/dbus/util-broker.c:229,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:230,1
    - Dst: sd_bus_new
      Src: /src/dbus-broker/test/dbus/util-broker.c:232,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:233,1
    - Dst: sd_bus_set_fd
      Src: /src/dbus-broker/test/dbus/util-broker.c:236,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:237,1
    - Dst: sd_bus_attach_event
      Src: /src/dbus-broker/test/dbus/util-broker.c:239,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:240,1
    - Dst: sd_bus_add_object_vtable
      Src: /src/dbus-broker/test/dbus/util-broker.c:242,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:243,1
    - Dst: sd_bus_start
      Src: /src/dbus-broker/test/dbus/util-broker.c:245,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:246,1
    - Dst: sd_bus_message_new_method_call
      Src: /src/dbus-broker/test/dbus/util-broker.c:248,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:254,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/test/dbus/util-broker.c:256,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:260,1
    - Dst: util_append_policy
      Src: /src/dbus-broker/test/dbus/util-broker.c:262,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:263,1
    - Dst: sd_bus_call
      Src: /src/dbus-broker/test/dbus/util-broker.c:265,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:266,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 45
    argCount: 4
    argNames:
    - busp
    - event
    - listener_fd
    - pidp
    argTypes:
    - sd_bus**
    - sd_event*
    - int
    - pid_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 270
    functionName: util_fork_broker
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 0
    functionsReached:
    - execl
    - getenv
    - fork
    - sd_event_add_child
    - asprintf
    - sd_bus_attach_event
    - c_close
    - sd_bus_set_fd
    - fcntl
    - sd_bus_call
    - _c_cleanup_
    - sd_bus_start
    - socketpair
    - sd_bus_message_new_method_call
    - abort
    - c_assert
    - sd_bus_add_object_vtable
    - sd_bus_message_append
    - sd_bus_new
    - util_append_policy
    linkageType: ''
    returnType: void
    signature: void util_fork_broker(sd_bus **busp, sd_event *event, int listener_fd,
      pid_t *pidp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:294,1
    - Dst: fork
      Src: /src/dbus-broker/test/dbus/util-broker.c:300,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:301,1
    - Dst: prctl
      Src: /src/dbus-broker/test/dbus/util-broker.c:305,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:306,1
    - Dst: fcntl
      Src: /src/dbus-broker/test/dbus/util-broker.c:309,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:310,1
    - Dst: fcntl
      Src: /src/dbus-broker/test/dbus/util-broker.c:311,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:312,1
    - Dst: syscall_memfd_create
      Src: /src/dbus-broker/test/dbus/util-broker.c:315,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:316,1
    - Dst: write
      Src: /src/dbus-broker/test/dbus/util-broker.c:317,1
    - Dst: strlen
      Src: /src/dbus-broker/test/dbus/util-broker.c:317,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:318,1
    - Dst: strlen
      Src: /src/dbus-broker/test/dbus/util-broker.c:318,1
    - Dst: asprintf
      Src: /src/dbus-broker/test/dbus/util-broker.c:321,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:322,1
    - Dst: asprintf
      Src: /src/dbus-broker/test/dbus/util-broker.c:323,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:324,1
    - Dst: getenv
      Src: /src/dbus-broker/test/dbus/util-broker.c:327,1
    - Dst: execl
      Src: /src/dbus-broker/test/dbus/util-broker.c:328,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:334,1
    - Dst: abort
      Src: /src/dbus-broker/test/dbus/util-broker.c:335,1
    - Dst: sd_event_add_child
      Src: /src/dbus-broker/test/dbus/util-broker.c:343,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:344,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 28
    argCount: 3
    argNames:
    - event
    - pipe_fd
    - pidp
    argTypes:
    - sd_event*
    - int
    - pid_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 272
    functionDepth: 1
    functionLinenumber: 272
    functionLinenumberEnd: 345
    functionName: util_fork_daemon
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 0
    functionsReached:
    - execl
    - strlen
    - syscall_memfd_create
    - getenv
    - fork
    - fcntl
    - _c_cleanup_
    - prctl
    - write
    - abort
    - sd_event_add_child
    - c_assert
    - asprintf
    linkageType: ''
    returnType: void
    signature: void util_fork_daemon(sd_event *event, int pipe_fd, pid_t *pidp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:348,1
    - Dst: calloc
      Src: /src/dbus-broker/test/dbus/util-broker.c:350,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - brokerp
    argTypes:
    - Broker**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 347
    functionDepth: 0
    functionLinenumber: 347
    functionLinenumberEnd: 357
    functionName: util_broker_new
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 50
    functionsReached:
    - c_assert
    - _c_cleanup_
    - calloc
    linkageType: ''
    returnType: void
    signature: void util_broker_new(Broker **brokerp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:363,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:364,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:365,1
    - Dst: free
      Src: /src/dbus-broker/test/dbus/util-broker.c:367,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - broker
    argTypes:
    - Broker*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 359
    functionDepth: 0
    functionLinenumber: 359
    functionLinenumberEnd: 370
    functionName: util_broker_free
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 0
    functionsReached:
    - c_assert
    - free
    linkageType: ''
    returnType: Broker
    signature: Broker *util_broker_free(Broker *broker)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: kill
      Src: /src/dbus-broker/test/dbus/util-broker.c:376,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:377,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - source
    - ssi
    - userdata
    argTypes:
    - sd_event_source*
    - struct signalfd_siginfo*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 372
    functionDepth: 0
    functionLinenumber: 372
    functionLinenumberEnd: 380
    functionName: util_event_sigusr1
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 0
    functionsReached:
    - c_assert
    - kill
    linkageType: ''
    returnType: int
    signature: int util_event_sigusr1(sd_event_source *source, const struct signalfd_siginfo
      *ssi, void *userdata)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:383,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:384,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:388,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:389,1
    - Dst: util_event_new
      Src: /src/dbus-broker/test/dbus/util-broker.c:391,1
    - Dst: sd_event_add_signal
      Src: /src/dbus-broker/test/dbus/util-broker.c:393,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:394,1
    - Dst: util_fork_broker
      Src: /src/dbus-broker/test/dbus/util-broker.c:397,1
    - Dst: getpid
      Src: /src/dbus-broker/test/dbus/util-broker.c:399,1
    - Dst: c_close
      Src: /src/dbus-broker/test/dbus/util-broker.c:400,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:402,1
    - Dst: util_fork_daemon
      Src: /src/dbus-broker/test/dbus/util-broker.c:403,1
    - Dst: c_close
      Src: /src/dbus-broker/test/dbus/util-broker.c:408,1
    - Dst: sd_event_loop
      Src: /src/dbus-broker/test/dbus/util-broker.c:410,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:411,1
    - Dst: c_close
      Src: /src/dbus-broker/test/dbus/util-broker.c:413,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 1
    argNames:
    - userdata
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 382
    functionDepth: 2
    functionLinenumber: 382
    functionLinenumberEnd: 415
    functionName: util_broker_thread
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 0
    functionsReached:
    - c_close
    - util_fork_daemon
    - util_event_new
    - sd_event_add_signal
    - _c_cleanup_
    - util_fork_broker
    - getpid
    - c_assert
    - sd_event_loop
    linkageType: ''
    returnType: void
    signature: void *util_broker_thread(void *userdata)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:424,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:425,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:426,1
    - Dst: prctl
      Src: /src/dbus-broker/test/dbus/util-broker.c:433,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:434,1
    - Dst: sigemptyset
      Src: /src/dbus-broker/test/dbus/util-broker.c:442,1
    - Dst: sigaddset
      Src: /src/dbus-broker/test/dbus/util-broker.c:443,1
    - Dst: pthread_sigmask
      Src: /src/dbus-broker/test/dbus/util-broker.c:444,1
    - Dst: sigemptyset
      Src: /src/dbus-broker/test/dbus/util-broker.c:446,1
    - Dst: sigaddset
      Src: /src/dbus-broker/test/dbus/util-broker.c:447,1
    - Dst: pthread_sigmask
      Src: /src/dbus-broker/test/dbus/util-broker.c:448,1
    - Dst: pipe2
      Src: /src/dbus-broker/test/dbus/util-broker.c:456,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:457,1
    - Dst: getenv
      Src: /src/dbus-broker/test/dbus/util-broker.c:459,1
    - Dst: pthread_create
      Src: /src/dbus-broker/test/dbus/util-broker.c:468,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:469,1
    - Dst: read
      Src: /src/dbus-broker/test/dbus/util-broker.c:472,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:473,1
    - Dst: strncmp
      Src: /src/dbus-broker/test/dbus/util-broker.c:476,1
    - Dst: strlen
      Src: /src/dbus-broker/test/dbus/util-broker.c:476,1
    - Dst: memccpy
      Src: /src/dbus-broker/test/dbus/util-broker.c:479,1
    - Dst: strlen
      Src: /src/dbus-broker/test/dbus/util-broker.c:480,1
    - Dst: strncmp
      Src: /src/dbus-broker/test/dbus/util-broker.c:483,1
    - Dst: strlen
      Src: /src/dbus-broker/test/dbus/util-broker.c:483,1
    - Dst: memccpy
      Src: /src/dbus-broker/test/dbus/util-broker.c:485,1
    - Dst: strlen
      Src: /src/dbus-broker/test/dbus/util-broker.c:486,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:491,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:494,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:496,1
    - Dst: socket
      Src: /src/dbus-broker/test/dbus/util-broker.c:505,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:506,1
    - Dst: bind
      Src: /src/dbus-broker/test/dbus/util-broker.c:508,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:509,1
    - Dst: getsockname
      Src: /src/dbus-broker/test/dbus/util-broker.c:511,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:512,1
    - Dst: listen
      Src: /src/dbus-broker/test/dbus/util-broker.c:514,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:515,1
    - Dst: pthread_create
      Src: /src/dbus-broker/test/dbus/util-broker.c:517,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:518,1
    - Dst: read
      Src: /src/dbus-broker/test/dbus/util-broker.c:522,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:523,1
    - Dst: pthread_sigmask
      Src: /src/dbus-broker/test/dbus/util-broker.c:525,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 47
    argCount: 1
    argNames:
    - broker
    argTypes:
    - Broker*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 417
    functionDepth: 0
    functionLinenumber: 417
    functionLinenumberEnd: 526
    functionName: util_broker_spawn
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 50
    functionsReached:
    - bind
    - getsockname
    - pipe2
    - strlen
    - sigemptyset
    - memccpy
    - pthread_sigmask
    - getenv
    - pthread_create
    - listen
    - socket
    - read
    - prctl
    - strncmp
    - c_assert
    - sigaddset
    linkageType: ''
    returnType: void
    signature: void util_broker_spawn(Broker *broker)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:532,1
    - Dst: pthread_kill
      Src: /src/dbus-broker/test/dbus/util-broker.c:534,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:535,1
    - Dst: pthread_join
      Src: /src/dbus-broker/test/dbus/util-broker.c:537,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:538,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:539,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:541,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:542,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - broker
    argTypes:
    - Broker*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 528
    functionDepth: 0
    functionLinenumber: 528
    functionLinenumberEnd: 543
    functionName: util_broker_terminate
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 50
    functionsReached:
    - c_assert
    - pthread_kill
    - pthread_join
    linkageType: ''
    returnType: void
    signature: void util_broker_terminate(Broker *broker)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:546,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/util-broker.c:557,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/util-broker.c:559,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:567,1
    - Dst: util_broker_disconnect
      Src: /src/dbus-broker/test/dbus/util-broker.c:569,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - broker
    argTypes:
    - Broker*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 545
    functionDepth: 1
    functionLinenumber: 545
    functionLinenumberEnd: 570
    functionName: util_broker_settle
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 2
    functionsReached:
    - sd_bus_call_method
    - util_broker_disconnect
    - _c_cleanup_
    - c_assert
    - util_broker_connect
    linkageType: ''
    returnType: void
    signature: void util_broker_settle(Broker *broker)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:573,1
    - Dst: socket
      Src: /src/dbus-broker/test/dbus/util-broker.c:576,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:577,1
    - Dst: connect
      Src: /src/dbus-broker/test/dbus/util-broker.c:579,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:580,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - broker
    - fdp
    argTypes:
    - Broker*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 572
    functionDepth: 0
    functionLinenumber: 572
    functionLinenumberEnd: 584
    functionName: util_broker_connect_fd
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 1
    functionsReached:
    - c_assert
    - _c_cleanup_
    - connect
    - socket
    linkageType: ''
    returnType: void
    signature: void util_broker_connect_fd(Broker *broker, int *fdp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:587,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:588,1
    - Dst: socket
      Src: /src/dbus-broker/test/dbus/util-broker.c:591,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:592,1
    - Dst: connect
      Src: /src/dbus-broker/test/dbus/util-broker.c:594,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:595,1
    - Dst: sd_bus_new
      Src: /src/dbus-broker/test/dbus/util-broker.c:597,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:598,1
    - Dst: sd_bus_set_fd
      Src: /src/dbus-broker/test/dbus/util-broker.c:601,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:603,1
    - Dst: sd_bus_start
      Src: /src/dbus-broker/test/dbus/util-broker.c:605,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:606,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 2
    argNames:
    - broker
    - busp
    argTypes:
    - Broker*
    - sd_bus**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 610
      start: 586
    functionDepth: 0
    functionLinenumber: 586
    functionLinenumberEnd: 610
    functionName: util_broker_connect_raw
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 23
    functionsReached:
    - connect
    - sd_bus_set_fd
    - sd_bus_new
    - socket
    - _c_cleanup_
    - sd_bus_start
    - c_assert
    linkageType: ''
    returnType: void
    signature: void util_broker_connect_raw(Broker *broker, sd_bus **busp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:613,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:614,1
    - Dst: socket
      Src: /src/dbus-broker/test/dbus/util-broker.c:617,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:618,1
    - Dst: connect
      Src: /src/dbus-broker/test/dbus/util-broker.c:620,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:621,1
    - Dst: sd_bus_new
      Src: /src/dbus-broker/test/dbus/util-broker.c:623,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:624,1
    - Dst: sd_bus_set_fd
      Src: /src/dbus-broker/test/dbus/util-broker.c:627,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:629,1
    - Dst: sd_bus_set_bus_client
      Src: /src/dbus-broker/test/dbus/util-broker.c:631,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:632,1
    - Dst: sd_bus_start
      Src: /src/dbus-broker/test/dbus/util-broker.c:634,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:635,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/util-broker.c:637,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 2
    argNames:
    - broker
    - busp
    argTypes:
    - Broker*
    - sd_bus**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 641
      start: 612
    functionDepth: 1
    functionLinenumber: 612
    functionLinenumberEnd: 641
    functionName: util_broker_connect
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 45
    functionsReached:
    - connect
    - util_broker_consume_signal
    - sd_bus_set_fd
    - sd_bus_set_bus_client
    - sd_bus_new
    - socket
    - _c_cleanup_
    - sd_bus_start
    - c_assert
    linkageType: ''
    returnType: void
    signature: void util_broker_connect(Broker *broker, sd_bus **busp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:644,1
    - Dst: util_broker_connect
      Src: /src/dbus-broker/test/dbus/util-broker.c:647,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/test/dbus/util-broker.c:649,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:652,1
    - Dst: util_broker_consume_signal
      Src: /src/dbus-broker/test/dbus/util-broker.c:654,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - broker
    - busp
    argTypes:
    - Broker*
    - sd_bus**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 643
    functionDepth: 2
    functionLinenumber: 643
    functionLinenumberEnd: 658
    functionName: util_broker_connect_monitor
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 4
    functionsReached:
    - util_broker_consume_signal
    - sd_bus_call_method
    - _c_cleanup_
    - c_assert
    - util_broker_connect
    linkageType: ''
    returnType: void
    signature: void util_broker_connect_monitor(Broker *broker, sd_bus **busp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_flush
      Src: /src/dbus-broker/test/dbus/util-broker.c:663,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:664,1
    - Dst: shutdown
      Src: /src/dbus-broker/test/dbus/util-broker.c:666,1
    - Dst: sd_bus_get_fd
      Src: /src/dbus-broker/test/dbus/util-broker.c:666,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:667,1
    - Dst: sd_bus_wait
      Src: /src/dbus-broker/test/dbus/util-broker.c:670,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:673,1
    - Dst: sd_bus_process
      Src: /src/dbus-broker/test/dbus/util-broker.c:675,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:676,1
    - Dst: sd_bus_close
      Src: /src/dbus-broker/test/dbus/util-broker.c:679,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - bus
    argTypes:
    - sd_bus*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 680
      start: 660
    functionDepth: 0
    functionLinenumber: 660
    functionLinenumberEnd: 680
    functionName: util_broker_disconnect
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 2
    functionsReached:
    - sd_bus_get_fd
    - shutdown
    - sd_bus_process
    - sd_bus_close
    - sd_bus_wait
    - sd_bus_flush
    - c_assert
    linkageType: ''
    returnType: void
    signature: void util_broker_disconnect(sd_bus *bus)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:683,1
    - Dst: sd_bus_wait
      Src: /src/dbus-broker/test/dbus/util-broker.c:687,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:688,1
    - Dst: sd_bus_process
      Src: /src/dbus-broker/test/dbus/util-broker.c:690,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:691,1
    - Dst: sd_bus_message_is_method_call
      Src: /src/dbus-broker/test/dbus/util-broker.c:697,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:698,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - bus
    - interface
    - member
    argTypes:
    - sd_bus*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 699
      start: 682
    functionDepth: 0
    functionLinenumber: 682
    functionLinenumberEnd: 699
    functionName: util_broker_consume_method_call
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 3
    functionsReached:
    - _c_cleanup_
    - sd_bus_process
    - sd_bus_wait
    - c_assert
    - sd_bus_message_is_method_call
    linkageType: ''
    returnType: void
    signature: void util_broker_consume_method_call(sd_bus *bus, const char *interface,
      const char *member)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:702,1
    - Dst: sd_bus_wait
      Src: /src/dbus-broker/test/dbus/util-broker.c:707,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:708,1
    - Dst: sd_bus_process
      Src: /src/dbus-broker/test/dbus/util-broker.c:710,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:711,1
    - Dst: sd_bus_message_get_type
      Src: /src/dbus-broker/test/dbus/util-broker.c:717,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:718,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:719,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - bus
    argTypes:
    - sd_bus*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 720
      start: 701
    functionDepth: 0
    functionLinenumber: 701
    functionLinenumberEnd: 720
    functionName: util_broker_consume_method_return
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 3
    functionsReached:
    - sd_bus_message_get_type
    - _c_cleanup_
    - sd_bus_process
    - sd_bus_wait
    - c_assert
    linkageType: ''
    returnType: void
    signature: void util_broker_consume_method_return(sd_bus *bus)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:723,1
    - Dst: sd_bus_wait
      Src: /src/dbus-broker/test/dbus/util-broker.c:727,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:728,1
    - Dst: sd_bus_process
      Src: /src/dbus-broker/test/dbus/util-broker.c:730,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:731,1
    - Dst: sd_bus_message_is_method_error
      Src: /src/dbus-broker/test/dbus/util-broker.c:737,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:738,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - bus
    - name
    argTypes:
    - sd_bus*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 739
      start: 722
    functionDepth: 0
    functionLinenumber: 722
    functionLinenumberEnd: 739
    functionName: util_broker_consume_method_error
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 0
    functionsReached:
    - _c_cleanup_
    - sd_bus_process
    - sd_bus_wait
    - c_assert
    - sd_bus_message_is_method_error
    linkageType: ''
    returnType: void
    signature: void util_broker_consume_method_error(sd_bus *bus, const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/test/dbus/util-broker.c:742,1
    - Dst: sd_bus_wait
      Src: /src/dbus-broker/test/dbus/util-broker.c:746,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:747,1
    - Dst: sd_bus_process
      Src: /src/dbus-broker/test/dbus/util-broker.c:749,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:750,1
    - Dst: sd_bus_message_is_signal
      Src: /src/dbus-broker/test/dbus/util-broker.c:756,1
    - Dst: c_assert
      Src: /src/dbus-broker/test/dbus/util-broker.c:757,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - bus
    - interface
    - member
    argTypes:
    - sd_bus*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 741
    functionDepth: 0
    functionLinenumber: 741
    functionLinenumberEnd: 758
    functionName: util_broker_consume_signal
    functionSourceFile: /src/dbus-broker/test/dbus/util-broker.c
    functionUses: 15
    functionsReached:
    - _c_cleanup_
    - sd_bus_message_is_signal
    - sd_bus_process
    - sd_bus_wait
    - c_assert
    linkageType: ''
    returnType: void
    signature: void util_broker_consume_signal(sd_bus *bus, const char *interface,
      const char *member)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: CONFIG_FILE_NULL
    functionSourceFile: /src/dbus-broker/src/launch/config.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CONFIG_FILE_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 210
    functionName: CONFIG_NODE_NULL
    functionSourceFile: /src/dbus-broker/src/launch/config.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CONFIG_NODE_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 220
    functionName: CONFIG_ROOT_NULL
    functionSourceFile: /src/dbus-broker/src/launch/config.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CONFIG_ROOT_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: CONFIG_PARSER_NULL
    functionSourceFile: /src/dbus-broker/src/launch/config.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CONFIG_PARSER_NULL(_x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_close
      Src: /src/dbus-broker/src/launch/launcher.c:62,1
    - Dst: sd_bus_unref
      Src: /src/dbus-broker/src/launch/launcher.c:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - bus
    argTypes:
    - sd_bus*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 65
    functionName: bus_close_unref
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - sd_bus_close
    - sd_bus_unref
    linkageType: ''
    returnType: sd_bus
    signature: sd_bus *bus_close_unref(sd_bus *bus)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/launcher.c:68,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/launcher.c:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - log
    - error
    argTypes:
    - Log*
    - sd_bus_error*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: log_append_bus_error
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - log_appendf
    linkageType: ''
    returnType: void
    signature: void log_append_bus_error(Log *log, const sd_bus_error *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/launcher.c:73,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/launcher.c:74,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/launcher.c:75,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/launcher.c:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - log
    - si
    argTypes:
    - Log*
    - siginfo_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 77
    functionName: log_append_siginfo
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - log_appendf
    linkageType: ''
    returnType: void
    signature: void log_append_siginfo(Log *log, const siginfo_t *si)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: log_append_siginfo
      Src: /src/dbus-broker/src/launch/launcher.c:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - log
    - ssi
    argTypes:
    - Log*
    - struct signalfd_siginfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 79
    functionDepth: 2
    functionLinenumber: 79
    functionLinenumberEnd: 87
    functionName: log_append_signalfd_siginfo
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - log_append_siginfo
    linkageType: ''
    returnType: void
    signature: void log_append_signalfd_siginfo(Log *log, const struct signalfd_siginfo
      *ssi)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/launcher.c:91,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - log
    - path
    argTypes:
    - Log*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionName: log_append_service_path
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - log_appendf
    linkageType: ''
    returnType: void
    signature: void log_append_service_path(Log *log, const char *path)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/launcher.c:96,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - log
    - name
    argTypes:
    - Log*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionName: log_append_service_name
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - log_appendf
    linkageType: ''
    returnType: void
    signature: void log_append_service_name(Log *log, const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/launcher.c:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - log
    - user
    argTypes:
    - Log*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: log_append_service_user
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - log_appendf
    linkageType: ''
    returnType: void
    signature: void log_append_service_user(Log *log, const char *user)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:110,1
    - Dst: log_append_signalfd_siginfo
      Src: /src/dbus-broker/src/launch/launcher.c:111,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:113,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:115,1
    - Dst: launcher_reload_config
      Src: /src/dbus-broker/src/launch/launcher.c:117,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:120,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:122,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:124,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:126,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - s
    - si
    - userdata
    argTypes:
    - sd_event_source*
    - struct signalfd_siginfo*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 106
    functionDepth: 3
    functionLinenumber: 106
    functionLinenumberEnd: 131
    functionName: launcher_on_sighup
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - log_commitf
    - log_append_here
    - log_append_signalfd_siginfo
    - launcher_reload_config
    - error_fold
    linkageType: ''
    returnType: int
    signature: int launcher_on_sighup(sd_event_source *s, const struct signalfd_siginfo
      *si, void *userdata)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: dirwatch_dispatch
      Src: /src/dbus-broker/src/launch/launcher.c:137,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:139,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:141,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:143,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:145,1
    - Dst: launcher_reload_config
      Src: /src/dbus-broker/src/launch/launcher.c:147,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:150,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:152,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:154,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:156,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 4
    argNames:
    - s
    - fd
    - revents
    - userdata
    argTypes:
    - sd_event_source*
    - int
    - uint32_t
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 161
    functionName: launcher_on_dirwatch
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - log_commitf
    - dirwatch_dispatch
    - log_append_here
    - launcher_reload_config
    - error_fold
    linkageType: ''
    returnType: int
    signature: int launcher_on_dirwatch(sd_event_source *s, int fd, uint32_t revents,
      void *userdata)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:164,1
    - Dst: socket
      Src: /src/dbus-broker/src/launch/launcher.c:171,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:173,1
    - Dst: connect
      Src: /src/dbus-broker/src/launch/launcher.c:175,1
    - Dst: strlen
      Src: /src/dbus-broker/src/launch/launcher.c:177,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:179,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - fdp
    argTypes:
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 184
    functionName: launcher_open_journal
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - strlen
    - connect
    - error_origin
    - socket
    - _c_cleanup_
    linkageType: ''
    returnType: int
    signature: int launcher_open_journal(int *fdp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/launcher.c:189,1
    - Dst: log_get_fd
      Src: /src/dbus-broker/src/launch/launcher.c:189,1
    - Dst: launcher_open_journal
      Src: /src/dbus-broker/src/launch/launcher.c:191,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:193,1
    - Dst: log_init_journal_consume
      Src: /src/dbus-broker/src/launch/launcher.c:195,1
    - Dst: log_set_lossy
      Src: /src/dbus-broker/src/launch/launcher.c:198,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - launcher
    argTypes:
    - Launcher*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 186
    functionDepth: 2
    functionLinenumber: 186
    functionLinenumberEnd: 201
    functionName: launcher_open_log
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - log_get_fd
    - log_init_journal_consume
    - log_set_lossy
    - c_assert
    - error_fold
    - launcher_open_journal
    linkageType: ''
    returnType: int
    signature: int launcher_open_log(Launcher *launcher)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:204,1
    - Dst: calloc
      Src: /src/dbus-broker/src/launch/launcher.c:207,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:209,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/launcher.c:219,1
    - Dst: launcher_open_log
      Src: /src/dbus-broker/src/launch/launcher.c:221,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:223,1
    - Dst: sd_event_default
      Src: /src/dbus-broker/src/launch/launcher.c:225,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:227,1
    - Dst: sd_event_add_signal
      Src: /src/dbus-broker/src/launch/launcher.c:229,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:231,1
    - Dst: sd_event_add_signal
      Src: /src/dbus-broker/src/launch/launcher.c:233,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:235,1
    - Dst: sd_event_add_signal
      Src: /src/dbus-broker/src/launch/launcher.c:237,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:239,1
    - Dst: sd_bus_new
      Src: /src/dbus-broker/src/launch/launcher.c:241,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:243,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 5
    argNames:
    - launcherp
    - fd_listen
    - audit
    - configfile
    - user_scope
    argTypes:
    - Launcher**
    - int
    - bool
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 203
    functionDepth: 3
    functionLinenumber: 203
    functionLinenumberEnd: 248
    functionName: launcher_new
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - launcher_open_log
    - calloc
    - error_origin
    - sd_event_add_signal
    - sd_bus_new
    - _c_cleanup_
    - sd_event_default
    - error_trace
    - strdup
    linkageType: ''
    returnType: int
    signature: int launcher_new(Launcher **launcherp, int fd_listen, bool audit, const
      char *configfile, bool user_scope)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_for_each_entry_safe_postorder_unlink
      Src: /src/dbus-broker/src/launch/launcher.c:256,1
    - Dst: service_free
      Src: /src/dbus-broker/src/launch/launcher.c:257,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/launcher.c:258,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/launch/launcher.c:258,1
    - Dst: sd_event_source_unref
      Src: /src/dbus-broker/src/launch/launcher.c:260,1
    - Dst: dirwatch_free
      Src: /src/dbus-broker/src/launch/launcher.c:261,1
    - Dst: c_close
      Src: /src/dbus-broker/src/launch/launcher.c:262,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/launcher.c:263,1
    - Dst: log_deinit
      Src: /src/dbus-broker/src/launch/launcher.c:264,1
    - Dst: bus_close_unref
      Src: /src/dbus-broker/src/launch/launcher.c:265,1
    - Dst: bus_close_unref
      Src: /src/dbus-broker/src/launch/launcher.c:266,1
    - Dst: sd_event_unref
      Src: /src/dbus-broker/src/launch/launcher.c:267,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/launcher.c:268,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 1
    argNames:
    - launcher
    argTypes:
    - Launcher*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 250
    functionDepth: 1
    functionLinenumber: 250
    functionLinenumberEnd: 271
    functionName: launcher_free
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - c_close
    - c_rbtree_is_empty
    - sd_event_unref
    - dirwatch_free
    - c_rbtree_for_each_entry_safe_postorder_unlink
    - service_free
    - sd_event_source_unref
    - log_deinit
    - free
    - bus_close_unref
    - c_assert
    linkageType: ''
    returnType: Launcher
    signature: Launcher *launcher_free(Launcher *launcher)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: C_DECIMAL_MAX
      Src: /src/dbus-broker/src/launch/launcher.c:275,1
    - Dst: C_DECIMAL_MAX
      Src: /src/dbus-broker/src/launch/launcher.c:276,1
    - Dst: C_DECIMAL_MAX
      Src: /src/dbus-broker/src/launch/launcher.c:278,1
    - Dst: C_DECIMAL_MAX
      Src: /src/dbus-broker/src/launch/launcher.c:279,1
    - Dst: C_DECIMAL_MAX
      Src: /src/dbus-broker/src/launch/launcher.c:280,1
    - Dst: util_audit_drop_permissions
      Src: /src/dbus-broker/src/launch/launcher.c:301,1
    - Dst: prctl
      Src: /src/dbus-broker/src/launch/launcher.c:306,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:308,1
    - Dst: launcher_open_journal
      Src: /src/dbus-broker/src/launch/launcher.c:312,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:314,1
    - Dst: fcntl
      Src: /src/dbus-broker/src/launch/launcher.c:318,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:320,1
    - Dst: fcntl
      Src: /src/dbus-broker/src/launch/launcher.c:324,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:326,1
    - Dst: fcntl
      Src: /src/dbus-broker/src/launch/launcher.c:330,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:332,1
    - Dst: fcntl
      Src: /src/dbus-broker/src/launch/launcher.c:336,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:338,1
    - Dst: sd_id128_get_machine
      Src: /src/dbus-broker/src/launch/launcher.c:342,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:344,1
    - Dst: sd_id128_to_string
      Src: /src/dbus-broker/src/launch/launcher.c:348,1
    - Dst: snprintf
      Src: /src/dbus-broker/src/launch/launcher.c:350,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/launcher.c:351,1
    - Dst: snprintf
      Src: /src/dbus-broker/src/launch/launcher.c:353,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/launcher.c:354,1
    - Dst: snprintf
      Src: /src/dbus-broker/src/launch/launcher.c:356,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/launcher.c:357,1
    - Dst: snprintf
      Src: /src/dbus-broker/src/launch/launcher.c:359,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/launcher.c:360,1
    - Dst: snprintf
      Src: /src/dbus-broker/src/launch/launcher.c:362,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/launcher.c:363,1
    - Dst: execve
      Src: /src/dbus-broker/src/launch/launcher.c:365,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:366,1
    - Dst: _exit
      Src: /src/dbus-broker/src/launch/launcher.c:369,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 65
    argCount: 2
    argNames:
    - launcher
    - fd_controller
    argTypes:
    - Launcher*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 273
    functionDepth: 2
    functionLinenumber: 273
    functionLinenumberEnd: 370
    functionName: launcher_run_child
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - util_audit_drop_permissions
    - sd_id128_get_machine
    - sd_id128_to_string
    - snprintf
    - error_origin
    - fcntl
    - prctl
    - error_trace
    - _exit
    - c_assert
    - execve
    - C_DECIMAL_MAX
    - launcher_open_journal
    linkageType: ''
    returnType: void
    signature: void launcher_run_child(Launcher *launcher, int fd_controller)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:376,1
    - Dst: log_append_siginfo
      Src: /src/dbus-broker/src/launch/launcher.c:377,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:379,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:381,1
    - Dst: sd_event_exit
      Src: /src/dbus-broker/src/launch/launcher.c:383,1
    - Dst: sd_event_source_get_event
      Src: /src/dbus-broker/src/launch/launcher.c:383,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - source
    - si
    - userdata
    argTypes:
    - sd_event_source*
    - siginfo_t*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 372
    functionDepth: 2
    functionLinenumber: 372
    functionLinenumberEnd: 385
    functionName: launcher_on_child_exit
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - log_commitf
    - log_append_here
    - log_append_siginfo
    - sd_event_exit
    - sd_event_source_get_event
    - error_fold
    linkageType: ''
    returnType: int
    signature: int launcher_on_child_exit(sd_event_source *source, const siginfo_t
      *si, void *userdata)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fork
      Src: /src/dbus-broker/src/launch/launcher.c:391,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:393,1
    - Dst: launcher_run_child
      Src: /src/dbus-broker/src/launch/launcher.c:396,1
    - Dst: sd_event_add_child
      Src: /src/dbus-broker/src/launch/launcher.c:398,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:400,1
    - Dst: close
      Src: /src/dbus-broker/src/launch/launcher.c:402,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - launcher
    - fd_controller
    argTypes:
    - Launcher*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 387
    functionDepth: 3
    functionLinenumber: 387
    functionLinenumberEnd: 404
    functionName: launcher_fork
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - close
    - launcher_run_child
    - error_origin
    - fork
    - sd_event_add_child
    linkageType: ''
    returnType: int
    signature: int launcher_fork(Launcher *launcher, int fd_controller)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/src/launch/launcher.c:411,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:413,1
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/launch/launcher.c:415,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:421,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:423,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:425,1
    - Dst: service_activate
      Src: /src/dbus-broker/src/launch/launcher.c:430,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:432,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - launcher
    - m
    - id
    argTypes:
    - Launcher*
    - sd_bus_message*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 435
      start: 406
    functionDepth: 1
    functionLinenumber: 406
    functionLinenumberEnd: 435
    functionName: launcher_on_name_activate
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - log_commitf
    - log_append_here
    - error_origin
    - sd_bus_message_read
    - c_rbtree_find_entry
    - error_fold
    - service_activate
    linkageType: ''
    returnType: int
    signature: int launcher_on_name_activate(Launcher *launcher, sd_bus_message *m,
      const char *id)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_message_get_error
      Src: /src/dbus-broker/src/launch/launcher.c:442,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:447,1
    - Dst: log_append_bus_error
      Src: /src/dbus-broker/src/launch/launcher.c:448,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:450,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:452,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - message
    - userdata
    - errorp
    argTypes:
    - sd_bus_message*
    - void*
    - sd_bus_error*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 437
    functionDepth: 1
    functionLinenumber: 437
    functionLinenumberEnd: 455
    functionName: launcher_set_environment_handler
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - log_commitf
    - sd_bus_message_get_error
    - log_append_here
    - log_append_bus_error
    - error_fold
    linkageType: ''
    returnType: int
    signature: int launcher_set_environment_handler(sd_bus_message *message, void
      *userdata, sd_bus_error *errorp)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:458,1
    - Dst: sd_bus_message_new_method_call
      Src: /src/dbus-broker/src/launch/launcher.c:461,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:467,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/src/launch/launcher.c:469,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:471,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/launcher.c:473,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:475,1
    - Dst: sd_bus_message_at_end
      Src: /src/dbus-broker/src/launch/launcher.c:477,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:478,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/src/launch/launcher.c:481,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:483,1
    - Dst: asprintf
      Src: /src/dbus-broker/src/launch/launcher.c:485,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:487,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/launcher.c:489,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:491,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/launcher.c:494,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:496,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/src/launch/launcher.c:498,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:500,1
    - Dst: sd_bus_call_async
      Src: /src/dbus-broker/src/launch/launcher.c:502,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:504,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 2
    argNames:
    - launcher
    - m
    argTypes:
    - Launcher*
    - sd_bus_message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 457
    functionDepth: 1
    functionLinenumber: 457
    functionLinenumberEnd: 507
    functionName: launcher_on_set_activation_environment
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - sd_bus_call_async
    - sd_bus_message_new_method_call
    - sd_bus_message_append
    - sd_bus_message_open_container
    - error_origin
    - _c_cleanup_
    - sd_bus_message_exit_container
    - sd_bus_message_close_container
    - sd_bus_message_read
    - sd_bus_message_at_end
    - asprintf
    - sd_bus_message_enter_container
    linkageType: ''
    returnType: int
    signature: int launcher_on_set_activation_environment(Launcher *launcher, sd_bus_message
      *m)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_message_get_path
      Src: /src/dbus-broker/src/launch/launcher.c:514,1
    - Dst: string_prefix
      Src: /src/dbus-broker/src/launch/launcher.c:518,1
    - Dst: sd_bus_message_is_signal
      Src: /src/dbus-broker/src/launch/launcher.c:520,1
    - Dst: launcher_on_name_activate
      Src: /src/dbus-broker/src/launch/launcher.c:521,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/launcher.c:522,1
    - Dst: sd_bus_message_is_signal
      Src: /src/dbus-broker/src/launch/launcher.c:523,1
    - Dst: launcher_on_set_activation_environment
      Src: /src/dbus-broker/src/launch/launcher.c:524,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:527,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 3
    argNames:
    - m
    - userdata
    - error
    argTypes:
    - sd_bus_message*
    - void*
    - sd_bus_error*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 509
    functionDepth: 2
    functionLinenumber: 509
    functionLinenumberEnd: 528
    functionName: launcher_on_message
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - sd_bus_message_get_path
    - launcher_on_set_activation_environment
    - sd_bus_message_is_signal
    - launcher_on_name_activate
    - error_trace
    - strcmp
    - string_prefix
    linkageType: ''
    returnType: int
    signature: int launcher_on_message(sd_bus_message *m, void *userdata, sd_bus_error
      *error)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:531,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:532,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:533,1
    - Dst: open
      Src: /src/dbus-broker/src/launch/launcher.c:538,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:549,1
    - Dst: log_append_service_path
      Src: /src/dbus-broker/src/launch/launcher.c:550,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:552,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:554,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:556,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:558,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:560,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:562,1
    - Dst: c_ini_reader_new
      Src: /src/dbus-broker/src/launch/launcher.c:568,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:570,1
    - Dst: c_ini_reader_set_mode
      Src: /src/dbus-broker/src/launch/launcher.c:572,1
    - Dst: read
      Src: /src/dbus-broker/src/launch/launcher.c:580,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:582,1
    - Dst: c_ini_reader_feed
      Src: /src/dbus-broker/src/launch/launcher.c:586,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:588,1
    - Dst: c_ini_reader_seal
      Src: /src/dbus-broker/src/launch/launcher.c:591,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:593,1
    - Dst: c_ini_domain_find
      Src: /src/dbus-broker/src/launch/launcher.c:595,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:597,1
    - Dst: log_append_service_path
      Src: /src/dbus-broker/src/launch/launcher.c:598,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:600,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:602,1
    - Dst: c_ini_group_ref
      Src: /src/dbus-broker/src/launch/launcher.c:607,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 52
    argCount: 3
    argNames:
    - launcher
    - groupp
    - path
    argTypes:
    - Launcher*
    - CIniGroup**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 530
    functionDepth: 1
    functionLinenumber: 530
    functionLinenumberEnd: 609
    functionName: launcher_ini_reader_parse_file
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - c_ini_group_ref
    - c_ini_domain_find
    - log_commitf
    - log_append_service_path
    - log_append_here
    - error_origin
    - c_ini_reader_feed
    - read
    - _c_cleanup_
    - c_ini_reader_set_mode
    - c_ini_reader_new
    - c_ini_reader_seal
    - open
    - error_fold
    linkageType: ''
    returnType: int
    signature: int launcher_ini_reader_parse_file(Launcher *launcher, CIniGroup **groupp,
      const char *path)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:612,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:613,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:614,1
    - Dst: launcher_ini_reader_parse_file
      Src: /src/dbus-broker/src/launch/launcher.c:622,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:624,1
    - Dst: c_ini_group_find
      Src: /src/dbus-broker/src/launch/launcher.c:626,1
    - Dst: c_ini_group_find
      Src: /src/dbus-broker/src/launch/launcher.c:627,1
    - Dst: c_ini_group_find
      Src: /src/dbus-broker/src/launch/launcher.c:628,1
    - Dst: c_ini_group_find
      Src: /src/dbus-broker/src/launch/launcher.c:629,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:632,1
    - Dst: log_append_service_path
      Src: /src/dbus-broker/src/launch/launcher.c:633,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:635,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:637,1
    - Dst: c_ini_entry_get_value
      Src: /src/dbus-broker/src/launch/launcher.c:642,1
    - Dst: dbus_validate_name
      Src: /src/dbus-broker/src/launch/launcher.c:643,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:644,1
    - Dst: log_append_service_path
      Src: /src/dbus-broker/src/launch/launcher.c:645,1
    - Dst: log_append_service_name
      Src: /src/dbus-broker/src/launch/launcher.c:646,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:648,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:650,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/launch/launcher.c:653,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:655,1
    - Dst: log_append_service_path
      Src: /src/dbus-broker/src/launch/launcher.c:656,1
    - Dst: log_append_service_name
      Src: /src/dbus-broker/src/launch/launcher.c:657,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:659,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:661,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:665,1
    - Dst: log_append_service_path
      Src: /src/dbus-broker/src/launch/launcher.c:666,1
    - Dst: log_append_service_name
      Src: /src/dbus-broker/src/launch/launcher.c:667,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:669,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:671,1
    - Dst: c_ini_entry_get_value
      Src: /src/dbus-broker/src/launch/launcher.c:678,1
    - Dst: c_ini_entry_get_value
      Src: /src/dbus-broker/src/launch/launcher.c:681,1
    - Dst: c_shquote_parse_argv
      Src: /src/dbus-broker/src/launch/launcher.c:683,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:686,1
    - Dst: log_append_service_path
      Src: /src/dbus-broker/src/launch/launcher.c:687,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:689,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:691,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:696,1
    - Dst: c_ini_entry_get_value
      Src: /src/dbus-broker/src/launch/launcher.c:701,1
    - Dst: nss_cache_get_uid
      Src: /src/dbus-broker/src/launch/launcher.c:703,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:706,1
    - Dst: log_append_service_path
      Src: /src/dbus-broker/src/launch/launcher.c:707,1
    - Dst: log_append_service_user
      Src: /src/dbus-broker/src/launch/launcher.c:708,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:710,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:712,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:717,1
    - Dst: getuid
      Src: /src/dbus-broker/src/launch/launcher.c:721,1
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/launch/launcher.c:724,1
    - Dst: service_new
      Src: /src/dbus-broker/src/launch/launcher.c:726,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:728,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/launch/launcher.c:732,1
    - Dst: service_update
      Src: /src/dbus-broker/src/launch/launcher.c:736,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:738,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:740,1
    - Dst: log_append_service_path
      Src: /src/dbus-broker/src/launch/launcher.c:741,1
    - Dst: log_append_service_name
      Src: /src/dbus-broker/src/launch/launcher.c:742,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:744,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:746,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 106
    argCount: 5
    argNames:
    - launcher
    - path
    - basename
    - n_basename
    - nss_cache
    argTypes:
    - Launcher*
    - char*
    - char*
    - size_t
    - NSSCache*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 611
    functionDepth: 2
    functionLinenumber: 611
    functionLinenumberEnd: 754
    functionName: launcher_load_service_file
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - nss_cache_get_uid
    - c_shquote_parse_argv
    - error_origin
    - strncmp
    - c_container_of
    - service_new
    - log_commitf
    - log_append_here
    - log_append_service_user
    - _c_cleanup_
    - launcher_ini_reader_parse_file
    - service_update
    - error_trace
    - dbus_validate_name
    - log_append_service_name
    - c_ini_entry_get_value
    - getuid
    - log_append_service_path
    - c_rbtree_find_slot
    - c_ini_group_find
    - error_fold
    linkageType: ''
    returnType: int
    signature: int launcher_load_service_file(Launcher *launcher, const char *path,
      const char *basename, size_t n_basename, NSSCache *nss_cache)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:758,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:759,1
    - Dst: opendir
      Src: /src/dbus-broker/src/launch/launcher.c:765,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:770,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:771,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:773,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:777,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:778,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:780,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:782,1
    - Dst: dirwatch_add
      Src: /src/dbus-broker/src/launch/launcher.c:786,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:788,1
    - Dst: fs_dir_list
      Src: /src/dbus-broker/src/launch/launcher.c:790,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:792,1
    - Dst: strlen
      Src: /src/dbus-broker/src/launch/launcher.c:797,1
    - Dst: strlen
      Src: /src/dbus-broker/src/launch/launcher.c:798,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/launcher.c:800,1
    - Dst: strlen
      Src: /src/dbus-broker/src/launch/launcher.c:800,1
    - Dst: asprintf
      Src: /src/dbus-broker/src/launch/launcher.c:803,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:805,1
    - Dst: launcher_load_service_file
      Src: /src/dbus-broker/src/launch/launcher.c:807,1
    - Dst: strlen
      Src: /src/dbus-broker/src/launch/launcher.c:807,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/launcher.c:808,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:810,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 44
    argCount: 3
    argNames:
    - launcher
    - dirpath
    - nss_cache
    argTypes:
    - Launcher*
    - char*
    - NSSCache*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 814
      start: 756
    functionDepth: 3
    functionLinenumber: 756
    functionLinenumberEnd: 814
    functionName: launcher_load_service_dir
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - opendir
    - log_commitf
    - strlen
    - launcher_load_service_file
    - log_append_here
    - asprintf
    - error_origin
    - _c_cleanup_
    - dirwatch_add
    - fs_dir_list
    - free
    - error_trace
    - strcmp
    - error_fold
    linkageType: ''
    returnType: int
    signature: int launcher_load_service_dir(Launcher *launcher, const char *dirpath,
      NSSCache *nss_cache)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/launch/launcher.c:820,1
    - Dst: service_add
      Src: /src/dbus-broker/src/launch/launcher.c:821,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:823,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - launcher
    argTypes:
    - Launcher*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 816
    functionDepth: 1
    functionLinenumber: 816
    functionLinenumberEnd: 827
    functionName: launcher_add_services
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - error_fold
    - service_add
    - c_rbtree_for_each_entry
    linkageType: ''
    returnType: int
    signature: int launcher_add_services(Launcher *launcher)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_for_each_entry_safe
      Src: /src/dbus-broker/src/launch/launcher.c:833,1
    - Dst: service_remove
      Src: /src/dbus-broker/src/launch/launcher.c:837,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:839,1
    - Dst: service_free
      Src: /src/dbus-broker/src/launch/launcher.c:841,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - launcher
    argTypes:
    - Launcher*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 845
      start: 829
    functionDepth: 1
    functionLinenumber: 829
    functionLinenumberEnd: 845
    functionName: launcher_remove_services
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - service_remove
    - service_free
    - error_fold
    - c_rbtree_for_each_entry_safe
    linkageType: ''
    returnType: int
    signature: int launcher_remove_services(Launcher *launcher)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:860,1
    - Dst: getenv
      Src: /src/dbus-broker/src/launch/launcher.c:863,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/launcher.c:865,1
    - Dst: asprintf
      Src: /src/dbus-broker/src/launch/launcher.c:867,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:869,1
    - Dst: launcher_load_service_dir
      Src: /src/dbus-broker/src/launch/launcher.c:871,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:873,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:883,1
    - Dst: getenv
      Src: /src/dbus-broker/src/launch/launcher.c:887,1
    - Dst: asprintf
      Src: /src/dbus-broker/src/launch/launcher.c:889,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:891,1
    - Dst: getpwuid
      Src: /src/dbus-broker/src/launch/launcher.c:893,1
    - Dst: getuid
      Src: /src/dbus-broker/src/launch/launcher.c:893,1
    - Dst: asprintf
      Src: /src/dbus-broker/src/launch/launcher.c:895,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:897,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/launcher.c:901,1
    - Dst: launcher_load_service_dir
      Src: /src/dbus-broker/src/launch/launcher.c:903,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:905,1
    - Dst: getenv
      Src: /src/dbus-broker/src/launch/launcher.c:918,1
    - Dst: strchr
      Src: /src/dbus-broker/src/launch/launcher.c:922,1
    - Dst: strlen
      Src: /src/dbus-broker/src/launch/launcher.c:923,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:926,1
    - Dst: asprintf
      Src: /src/dbus-broker/src/launch/launcher.c:928,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:930,1
    - Dst: launcher_load_service_dir
      Src: /src/dbus-broker/src/launch/launcher.c:932,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:934,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 53
    argCount: 2
    argNames:
    - launcher
    - nss_cache
    argTypes:
    - Launcher*
    - NSSCache*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 942
      start: 847
    functionDepth: 4
    functionLinenumber: 847
    functionLinenumberEnd: 942
    functionName: launcher_load_standard_session_services
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - getpwuid
    - strlen
    - strchr
    - getenv
    - error_origin
    - _c_cleanup_
    - error_trace
    - launcher_load_service_dir
    - asprintf
    - fprintf
    - getuid
    linkageType: ''
    returnType: int
    signature: int launcher_load_standard_session_services(Launcher *launcher, NSSCache
      *nss_cache)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:969,1
    - Dst: asprintf
      Src: /src/dbus-broker/src/launch/launcher.c:971,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:973,1
    - Dst: launcher_load_service_dir
      Src: /src/dbus-broker/src/launch/launcher.c:975,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:977,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - launcher
    - nss_cache
    argTypes:
    - Launcher*
    - NSSCache*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 944
    functionDepth: 4
    functionLinenumber: 944
    functionLinenumberEnd: 981
    functionName: launcher_load_standard_system_services
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - error_origin
    - _c_cleanup_
    - error_trace
    - launcher_load_service_dir
    - asprintf
    linkageType: ''
    returnType: int
    signature: int launcher_load_standard_system_services(Launcher *launcher, NSSCache
      *nss_cache)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: c_list_for_each_entry
      Src: /src/dbus-broker/src/launch/launcher.c:987,1
    - Dst: launcher_load_standard_session_services
      Src: /src/dbus-broker/src/launch/launcher.c:990,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:992,1
    - Dst: launcher_load_standard_system_services
      Src: /src/dbus-broker/src/launch/launcher.c:996,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:998,1
    - Dst: launcher_load_service_dir
      Src: /src/dbus-broker/src/launch/launcher.c:1002,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:1004,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 3
    argNames:
    - launcher
    - config
    - nss_cache
    argTypes:
    - Launcher*
    - ConfigRoot*
    - NSSCache*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1015
      start: 983
    functionDepth: 5
    functionLinenumber: 983
    functionLinenumberEnd: 1015
    functionName: launcher_load_services
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - c_list_for_each_entry
    - error_trace
    - launcher_load_service_dir
    - launcher_load_standard_system_services
    - launcher_load_standard_session_services
    linkageType: ''
    returnType: int
    signature: int launcher_load_services(Launcher *launcher, ConfigRoot *config,
      NSSCache *nss_cache)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:1018,1
    - Dst: CONFIG_PARSER_NULL
      Src: /src/dbus-broker/src/launch/launcher.c:1018,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:1019,1
    - Dst: dirwatch_new
      Src: /src/dbus-broker/src/launch/launcher.c:1029,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:1031,1
    - Dst: config_parser_init
      Src: /src/dbus-broker/src/launch/launcher.c:1040,1
    - Dst: config_parser_read
      Src: /src/dbus-broker/src/launch/launcher.c:1042,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:1047,1
    - Dst: dirwatch_free
      Src: /src/dbus-broker/src/launch/launcher.c:1050,1
    - Dst: sd_event_source_unref
      Src: /src/dbus-broker/src/launch/launcher.c:1051,1
    - Dst: sd_event_add_io
      Src: /src/dbus-broker/src/launch/launcher.c:1056,1
    - Dst: dirwatch_get_fd
      Src: /src/dbus-broker/src/launch/launcher.c:1058,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1063,1
    - Dst: c_list_for_each_entry
      Src: /src/dbus-broker/src/launch/launcher.c:1065,1
    - Dst: util_umul64_saturating
      Src: /src/dbus-broker/src/launch/launcher.c:1103,1
    - Dst: util_umul64_saturating
      Src: /src/dbus-broker/src/launch/launcher.c:1104,1
    - Dst: util_umul64_saturating
      Src: /src/dbus-broker/src/launch/launcher.c:1105,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 62
    argCount: 3
    argNames:
    - launcher
    - rootp
    - nss_cache
    argTypes:
    - Launcher*
    - ConfigRoot**
    - NSSCache*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1111
      start: 1017
    functionDepth: 1
    functionLinenumber: 1017
    functionLinenumberEnd: 1111
    functionName: launcher_parse_config
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - sd_event_add_io
    - c_list_for_each_entry
    - util_umul64_saturating
    - config_parser_init
    - CONFIG_PARSER_NULL
    - dirwatch_free
    - sd_event_source_unref
    - error_origin
    - _c_cleanup_
    - dirwatch_new
    - config_parser_read
    - dirwatch_get_fd
    - error_fold
    linkageType: ''
    returnType: int
    signature: int launcher_parse_config(Launcher *launcher, ConfigRoot **rootp, NSSCache
      *nss_cache)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: policy_import
      Src: /src/dbus-broker/src/launch/launcher.c:1116,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:1118,1
    - Dst: policy_optimize
      Src: /src/dbus-broker/src/launch/launcher.c:1120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - launcher
    - root
    - policy
    argTypes:
    - Launcher*
    - ConfigRoot*
    - Policy*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1123
      start: 1113
    functionDepth: 1
    functionLinenumber: 1113
    functionLinenumberEnd: 1123
    functionName: launcher_load_policy
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - policy_import
    - policy_optimize
    - error_fold
    linkageType: ''
    returnType: int
    signature: int launcher_load_policy(Launcher *launcher, ConfigRoot *root, Policy
      *policy)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:1126,1
    - Dst: sd_bus_message_new_method_call
      Src: /src/dbus-broker/src/launch/launcher.c:1129,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1136,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/launcher.c:1138,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1142,1
    - Dst: policy_export
      Src: /src/dbus-broker/src/launch/launcher.c:1144,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:1146,1
    - Dst: sd_bus_call
      Src: /src/dbus-broker/src/launch/launcher.c:1148,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1150,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - launcher
    - policy
    - system_console_users
    - n_system_console_users
    argTypes:
    - Launcher*
    - Policy*
    - uint32_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1153
      start: 1125
    functionDepth: 1
    functionLinenumber: 1125
    functionLinenumberEnd: 1153
    functionName: launcher_add_listener
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - sd_bus_message_new_method_call
    - sd_bus_message_append
    - error_origin
    - sd_bus_call
    - _c_cleanup_
    - policy_export
    - error_fold
    linkageType: ''
    returnType: int
    signature: int launcher_add_listener(Launcher *launcher, Policy *policy, uint32_t
      *system_console_users, size_t n_system_console_users)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:1156,1
    - Dst: sd_bus_message_new_method_call
      Src: /src/dbus-broker/src/launch/launcher.c:1159,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1166,1
    - Dst: policy_export
      Src: /src/dbus-broker/src/launch/launcher.c:1168,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:1170,1
    - Dst: sd_bus_call
      Src: /src/dbus-broker/src/launch/launcher.c:1172,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1174,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - launcher
    - policy
    - system_console_users
    - n_system_console_users
    argTypes:
    - Launcher*
    - Policy*
    - uint32_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1177
      start: 1155
    functionDepth: 1
    functionLinenumber: 1155
    functionLinenumberEnd: 1177
    functionName: launcher_set_policy
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - sd_bus_message_new_method_call
    - error_origin
    - sd_bus_call
    - _c_cleanup_
    - policy_export
    - error_fold
    linkageType: ''
    returnType: int
    signature: int launcher_set_policy(Launcher *launcher, Policy *policy, uint32_t
      *system_console_users, size_t n_system_console_users)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:1180,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:1181,1
    - Dst: POLICY_INIT
      Src: /src/dbus-broker/src/launch/launcher.c:1181,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:1182,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:1183,1
    - Dst: sd_notifyf
      Src: /src/dbus-broker/src/launch/launcher.c:1188,1
    - Dst: nsec_to_usec
      Src: /src/dbus-broker/src/launch/launcher.c:1191,1
    - Dst: nsec_now
      Src: /src/dbus-broker/src/launch/launcher.c:1191,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1193,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/launch/launcher.c:1195,1
    - Dst: nss_cache_populate
      Src: /src/dbus-broker/src/launch/launcher.c:1198,1
    - Dst: launcher_parse_config
      Src: /src/dbus-broker/src/launch/launcher.c:1202,1
    - Dst: nss_cache_resolve_system_console_users
      Src: /src/dbus-broker/src/launch/launcher.c:1207,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:1211,1
    - Dst: launcher_load_services
      Src: /src/dbus-broker/src/launch/launcher.c:1214,1
    - Dst: launcher_load_policy
      Src: /src/dbus-broker/src/launch/launcher.c:1218,1
    - Dst: bus_apparmor_is_enabled
      Src: /src/dbus-broker/src/launch/launcher.c:1228,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:1230,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/launcher.c:1233,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/launcher.c:1239,1
    - Dst: sd_event_exit
      Src: /src/dbus-broker/src/launch/launcher.c:1241,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:1243,1
    - Dst: launcher_remove_services
      Src: /src/dbus-broker/src/launch/launcher.c:1248,1
    - Dst: launcher_set_policy
      Src: /src/dbus-broker/src/launch/launcher.c:1252,1
    - Dst: launcher_add_services
      Src: /src/dbus-broker/src/launch/launcher.c:1256,1
    - Dst: sd_notify
      Src: /src/dbus-broker/src/launch/launcher.c:1261,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1263,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:1265,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 65
    argCount: 1
    argNames:
    - launcher
    argTypes:
    - Launcher*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1266
      start: 1179
    functionDepth: 6
    functionLinenumber: 1179
    functionLinenumberEnd: 1266
    functionName: launcher_reload_config
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 2
    functionsReached:
    - sd_notifyf
    - error_origin
    - c_rbtree_for_each_entry
    - nss_cache_resolve_system_console_users
    - POLICY_INIT
    - _c_cleanup_
    - launcher_load_policy
    - launcher_set_policy
    - launcher_load_services
    - launcher_add_services
    - launcher_remove_services
    - error_trace
    - sd_event_exit
    - fprintf
    - nsec_now
    - sd_notify
    - nss_cache_populate
    - nsec_to_usec
    - bus_apparmor_is_enabled
    - launcher_parse_config
    - error_fold
    linkageType: ''
    returnType: int
    signature: int launcher_reload_config(Launcher *launcher)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/launcher.c:1271,1
    - Dst: sd_bus_open_user
      Src: /src/dbus-broker/src/launch/launcher.c:1274,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1276,1
    - Dst: sd_bus_open_system
      Src: /src/dbus-broker/src/launch/launcher.c:1278,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1280,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - launcher
    argTypes:
    - Launcher*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1284
      start: 1268
    functionDepth: 1
    functionLinenumber: 1268
    functionLinenumberEnd: 1284
    functionName: launcher_connect
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - c_assert
    - sd_bus_open_system
    - sd_bus_open_user
    - error_origin
    linkageType: ''
    returnType: int
    signature: int launcher_connect(Launcher *launcher)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_call_method_async
      Src: /src/dbus-broker/src/launch/launcher.c:1298,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1310,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - launcher
    argTypes:
    - Launcher*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1313
      start: 1286
    functionDepth: 1
    functionLinenumber: 1286
    functionLinenumberEnd: 1313
    functionName: launcher_subscribe
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - sd_bus_call_method_async
    - error_origin
    linkageType: ''
    returnType: int
    signature: int launcher_subscribe(Launcher *launcher)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: launcher_reload_config
      Src: /src/dbus-broker/src/launch/launcher.c:1319,1
    - Dst: sd_bus_reply_method_errorf
      Src: /src/dbus-broker/src/launch/launcher.c:1322,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:1324,1
    - Dst: sd_bus_reply_method_return
      Src: /src/dbus-broker/src/launch/launcher.c:1327,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - message
    - userdata
    - error
    argTypes:
    - sd_bus_message*
    - void*
    - sd_bus_error*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1328
      start: 1315
    functionDepth: 7
    functionLinenumber: 1315
    functionLinenumberEnd: 1328
    functionName: bus_method_reload_config
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - sd_bus_reply_method_errorf
    - sd_bus_reply_method_return
    - launcher_reload_config
    - error_fold
    linkageType: ''
    returnType: int
    signature: int bus_method_reload_config(sd_bus_message *message, void *userdata,
      sd_bus_error *error)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:1339,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:1340,1
    - Dst: POLICY_INIT
      Src: /src/dbus-broker/src/launch/launcher.c:1340,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:1341,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/launcher.c:1342,1
    - Dst: nss_cache_populate
      Src: /src/dbus-broker/src/launch/launcher.c:1346,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:1348,1
    - Dst: launcher_parse_config
      Src: /src/dbus-broker/src/launch/launcher.c:1350,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:1352,1
    - Dst: nss_cache_resolve_system_console_users
      Src: /src/dbus-broker/src/launch/launcher.c:1355,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:1359,1
    - Dst: launcher_load_services
      Src: /src/dbus-broker/src/launch/launcher.c:1362,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:1364,1
    - Dst: sd_notify
      Src: /src/dbus-broker/src/launch/launcher.c:1366,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1368,1
    - Dst: launcher_load_policy
      Src: /src/dbus-broker/src/launch/launcher.c:1370,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:1372,1
    - Dst: bus_apparmor_is_enabled
      Src: /src/dbus-broker/src/launch/launcher.c:1378,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:1380,1
    - Dst: bus_apparmor_dbus_supported
      Src: /src/dbus-broker/src/launch/launcher.c:1382,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:1384,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/launcher.c:1387,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/launcher.c:1389,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/launcher.c:1397,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/launcher.c:1404,1
    - Dst: socketpair
      Src: /src/dbus-broker/src/launch/launcher.c:1406,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1408,1
    - Dst: sd_bus_set_fd
      Src: /src/dbus-broker/src/launch/launcher.c:1411,1
    - Dst: close
      Src: /src/dbus-broker/src/launch/launcher.c:1413,1
    - Dst: close
      Src: /src/dbus-broker/src/launch/launcher.c:1414,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1415,1
    - Dst: launcher_fork
      Src: /src/dbus-broker/src/launch/launcher.c:1419,1
    - Dst: close
      Src: /src/dbus-broker/src/launch/launcher.c:1421,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:1422,1
    - Dst: sd_bus_add_object_vtable
      Src: /src/dbus-broker/src/launch/launcher.c:1425,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1427,1
    - Dst: sd_bus_add_filter
      Src: /src/dbus-broker/src/launch/launcher.c:1429,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1431,1
    - Dst: sd_bus_start
      Src: /src/dbus-broker/src/launch/launcher.c:1433,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1435,1
    - Dst: launcher_add_services
      Src: /src/dbus-broker/src/launch/launcher.c:1437,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:1439,1
    - Dst: launcher_add_listener
      Src: /src/dbus-broker/src/launch/launcher.c:1441,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:1443,1
    - Dst: launcher_connect
      Src: /src/dbus-broker/src/launch/launcher.c:1445,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:1447,1
    - Dst: sd_bus_attach_event
      Src: /src/dbus-broker/src/launch/launcher.c:1449,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1451,1
    - Dst: sd_bus_attach_event
      Src: /src/dbus-broker/src/launch/launcher.c:1453,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1455,1
    - Dst: launcher_subscribe
      Src: /src/dbus-broker/src/launch/launcher.c:1457,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/launcher.c:1459,1
    - Dst: util_drop_permissions
      Src: /src/dbus-broker/src/launch/launcher.c:1462,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:1464,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/launcher.c:1467,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/launcher.c:1468,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:1470,1
    - Dst: sd_event_loop
      Src: /src/dbus-broker/src/launch/launcher.c:1472,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/launcher.c:1474,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/launcher.c:1476,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 101
    argCount: 1
    argNames:
    - launcher
    argTypes:
    - Launcher*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1479
      start: 1338
    functionDepth: 6
    functionLinenumber: 1338
    functionLinenumberEnd: 1479
    functionName: launcher_run
    functionSourceFile: /src/dbus-broker/src/launch/launcher.c
    functionUses: 0
    functionsReached:
    - sd_bus_add_filter
    - error_origin
    - launcher_connect
    - nss_cache_resolve_system_console_users
    - POLICY_INIT
    - sd_bus_attach_event
    - log_commitf
    - log_append_here
    - sd_bus_set_fd
    - util_drop_permissions
    - _c_cleanup_
    - sd_bus_start
    - launcher_add_listener
    - launcher_load_policy
    - launcher_load_services
    - launcher_add_services
    - socketpair
    - bus_apparmor_dbus_supported
    - error_trace
    - c_assert
    - fprintf
    - sd_event_loop
    - launcher_fork
    - sd_bus_add_object_vtable
    - close
    - sd_notify
    - nss_cache_populate
    - bus_apparmor_is_enabled
    - launcher_subscribe
    - launcher_parse_config
    - error_fold
    linkageType: ''
    returnType: int
    signature: int launcher_run(Launcher *launcher)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/dbus-broker/src/launch/main.c:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 33
    functionName: help
    functionSourceFile: /src/dbus-broker/src/launch/main.c
    functionUses: 0
    functionsReached:
    - printf
    linkageType: ''
    returnType: void
    signature: void help(void)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: getopt_long
      Src: /src/dbus-broker/src/launch/main.c:54,1
    - Dst: help
      Src: /src/dbus-broker/src/launch/main.c:57,1
    - Dst: printf
      Src: /src/dbus-broker/src/launch/main.c:61,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/main.c:77,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/main.c:79,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/main.c:82,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/main.c:92,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/main.c:97,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 39
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 102
    functionName: parse_argv
    functionSourceFile: /src/dbus-broker/src/launch/main.c
    functionUses: 1
    functionsReached:
    - error_origin
    - printf
    - help
    - strcmp
    - getopt_long
    - fprintf
    linkageType: ''
    returnType: int
    signature: int parse_argv(int argc, char *argv[])
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: sd_listen_fds
      Src: /src/dbus-broker/src/launch/main.c:107,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/main.c:109,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/main.c:112,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/main.c:116,1
    - Dst: sd_is_socket
      Src: /src/dbus-broker/src/launch/main.c:122,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/main.c:124,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/main.c:127,1
    - Dst: fcntl
      Src: /src/dbus-broker/src/launch/main.c:131,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/main.c:133,1
    - Dst: fcntl
      Src: /src/dbus-broker/src/launch/main.c:135,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/main.c:137,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 141
    functionName: inherit_fds
    functionSourceFile: /src/dbus-broker/src/launch/main.c
    functionUses: 0
    functionsReached:
    - sd_is_socket
    - error_origin
    - fcntl
    - sd_listen_fds
    - fprintf
    linkageType: ''
    returnType: int
    signature: int inherit_fds(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/main.c:144,1
    - Dst: launcher_new
      Src: /src/dbus-broker/src/launch/main.c:147,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/main.c:149,1
    - Dst: launcher_run
      Src: /src/dbus-broker/src/launch/main.c:151,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/main.c:152,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 143
    functionDepth: 7
    functionLinenumber: 143
    functionLinenumberEnd: 153
    functionName: run
    functionSourceFile: /src/dbus-broker/src/launch/main.c
    functionUses: 1
    functionsReached:
    - _c_cleanup_
    - launcher_new
    - launcher_run
    - error_fold
    linkageType: ''
    returnType: int
    signature: int run(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: parse_argv
      Src: /src/dbus-broker/src/launch/main.c:159,1
    - Dst: inherit_fds
      Src: /src/dbus-broker/src/launch/main.c:163,1
    - Dst: sigemptyset
      Src: /src/dbus-broker/src/launch/main.c:167,1
    - Dst: sigaddset
      Src: /src/dbus-broker/src/launch/main.c:168,1
    - Dst: sigaddset
      Src: /src/dbus-broker/src/launch/main.c:169,1
    - Dst: sigaddset
      Src: /src/dbus-broker/src/launch/main.c:170,1
    - Dst: sigaddset
      Src: /src/dbus-broker/src/launch/main.c:171,1
    - Dst: sigprocmask
      Src: /src/dbus-broker/src/launch/main.c:173,1
    - Dst: run
      Src: /src/dbus-broker/src/launch/main.c:174,1
    - Dst: sigprocmask
      Src: /src/dbus-broker/src/launch/main.c:175,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/main.c:178,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/main.c:180,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 182
    functionName: main
    functionSourceFile: /src/dbus-broker/src/launch/main.c
    functionUses: 0
    functionsReached:
    - fprintf
    - sigprocmask
    - sigemptyset
    - inherit_fds
    - run
    - error_trace
    - parse_argv
    - sigaddset
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: misc_memfd
      Src: /src/dbus-broker/src/launch/test-config.c:43,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/test-config.c:44,1
    - Dst: write
      Src: /src/dbus-broker/src/launch/test-config.c:45,1
    - Dst: strlen
      Src: /src/dbus-broker/src/launch/test-config.c:45,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/test-config.c:46,1
    - Dst: strlen
      Src: /src/dbus-broker/src/launch/test-config.c:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - data
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 49
    functionName: config_memfd
    functionSourceFile: /src/dbus-broker/src/launch/test-config.c
    functionUses: 0
    functionsReached:
    - misc_memfd
    - write
    - strlen
    - c_assert
    linkageType: ''
    returnType: int
    signature: int config_memfd(const char *data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/test-config.c:52,1
    - Dst: CONFIG_PARSER_NULL
      Src: /src/dbus-broker/src/launch/test-config.c:52,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/test-config.c:53,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/test-config.c:54,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/test-config.c:55,1
    - Dst: dirwatch_new
      Src: /src/dbus-broker/src/launch/test-config.c:58,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/test-config.c:59,1
    - Dst: config_parser_init
      Src: /src/dbus-broker/src/launch/test-config.c:61,1
    - Dst: config_parser_read
      Src: /src/dbus-broker/src/launch/test-config.c:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - rootp
    - path
    argTypes:
    - ConfigRoot**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 70
    functionName: parse_config
    functionSourceFile: /src/dbus-broker/src/launch/test-config.c
    functionUses: 2
    functionsReached:
    - config_parser_init
    - CONFIG_PARSER_NULL
    - _c_cleanup_
    - dirwatch_new
    - c_assert
    - config_parser_read
    linkageType: ''
    returnType: int
    signature: int parse_config(ConfigRoot **rootp, const char *path)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/test-config.c:73,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/test-config.c:74,1
    - Dst: config_memfd
      Src: /src/dbus-broker/src/launch/test-config.c:77,1
    - Dst: asprintf
      Src: /src/dbus-broker/src/launch/test-config.c:78,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/test-config.c:79,1
    - Dst: parse_config
      Src: /src/dbus-broker/src/launch/test-config.c:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - rootp
    - data
    argTypes:
    - ConfigRoot**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 72
    functionDepth: 2
    functionLinenumber: 72
    functionLinenumberEnd: 82
    functionName: parse_config_inline
    functionSourceFile: /src/dbus-broker/src/launch/test-config.c
    functionUses: 0
    functionsReached:
    - config_memfd
    - _c_cleanup_
    - parse_config
    - c_assert
    - asprintf
    linkageType: ''
    returnType: int
    signature: int parse_config_inline(ConfigRoot **rootp, const char *data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/test-config.c:85,1
    - Dst: parse_config
      Src: /src/dbus-broker/src/launch/test-config.c:89,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/test-config.c:90,1
    - Dst: c_list_for_each_entry
      Src: /src/dbus-broker/src/launch/test-config.c:92,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/test-config.c:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - path
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 84
    functionDepth: 2
    functionLinenumber: 84
    functionLinenumberEnd: 95
    functionName: print_config
    functionSourceFile: /src/dbus-broker/src/launch/test-config.c
    functionUses: 0
    functionsReached:
    - c_list_for_each_entry
    - _c_cleanup_
    - parse_config
    - c_assert
    - fprintf
    linkageType: ''
    returnType: void
    signature: void print_config(const char *path)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/test-config.c:98,1
    - Dst: CONFIG_PARSER_NULL
      Src: /src/dbus-broker/src/launch/test-config.c:98,1
    - Dst: config_parser_init
      Src: /src/dbus-broker/src/launch/test-config.c:100,1
    - Dst: config_parser_deinit
      Src: /src/dbus-broker/src/launch/test-config.c:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 102
    functionName: test_config_base
    functionSourceFile: /src/dbus-broker/src/launch/test-config.c
    functionUses: 0
    functionsReached:
    - _c_cleanup_
    - CONFIG_PARSER_NULL
    - config_parser_deinit
    - config_parser_init
    linkageType: ''
    returnType: void
    signature: void test_config_base(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/test-config.c:105,1
    - Dst: parse_config_inline
      Src: /src/dbus-broker/src/launch/test-config.c:121,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/test-config.c:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 104
    functionDepth: 3
    functionLinenumber: 104
    functionLinenumberEnd: 123
    functionName: test_config_sample0
    functionSourceFile: /src/dbus-broker/src/launch/test-config.c
    functionUses: 0
    functionsReached:
    - c_assert
    - _c_cleanup_
    - parse_config_inline
    linkageType: ''
    returnType: void
    signature: void test_config_sample0(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/test-config.c:126,1
    - Dst: parse_config_inline
      Src: /src/dbus-broker/src/launch/test-config.c:143,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/test-config.c:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 125
    functionDepth: 3
    functionLinenumber: 125
    functionLinenumberEnd: 145
    functionName: test_config_sample1
    functionSourceFile: /src/dbus-broker/src/launch/test-config.c
    functionUses: 0
    functionsReached:
    - c_assert
    - _c_cleanup_
    - parse_config_inline
    linkageType: ''
    returnType: void
    signature: void test_config_sample1(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: print_config
      Src: /src/dbus-broker/src/launch/test-config.c:149,1
    - Dst: test_config_base
      Src: /src/dbus-broker/src/launch/test-config.c:153,1
    - Dst: test_config_sample0
      Src: /src/dbus-broker/src/launch/test-config.c:154,1
    - Dst: test_config_sample1
      Src: /src/dbus-broker/src/launch/test-config.c:155,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 147
    functionDepth: 4
    functionLinenumber: 147
    functionLinenumberEnd: 158
    functionName: main
    functionSourceFile: /src/dbus-broker/src/launch/test-config.c
    functionUses: 0
    functionsReached:
    - print_config
    - test_config_base
    - test_config_sample0
    - test_config_sample1
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/test-nss-cache.c:12,1
    - Dst: nss_cache_get_uid
      Src: /src/dbus-broker/src/launch/test-nss-cache.c:16,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/test-nss-cache.c:17,1
    - Dst: nss_cache_get_gid
      Src: /src/dbus-broker/src/launch/test-nss-cache.c:19,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/test-nss-cache.c:20,1
    - Dst: nss_cache_get_uid
      Src: /src/dbus-broker/src/launch/test-nss-cache.c:22,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/test-nss-cache.c:23,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/test-nss-cache.c:24,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/test-nss-cache.c:25,1
    - Dst: nss_cache_get_gid
      Src: /src/dbus-broker/src/launch/test-nss-cache.c:27,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/test-nss-cache.c:28,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/test-nss-cache.c:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 11
    functionDepth: 1
    functionLinenumber: 11
    functionLinenumberEnd: 30
    functionName: test_nss_cache
    functionSourceFile: /src/dbus-broker/src/launch/test-nss-cache.c
    functionUses: 0
    functionsReached:
    - c_assert
    - _c_cleanup_
    - nss_cache_get_uid
    - nss_cache_get_gid
    linkageType: ''
    returnType: void
    signature: void test_nss_cache(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_nss_cache
      Src: /src/dbus-broker/src/launch/test-nss-cache.c:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: main
    functionSourceFile: /src/dbus-broker/src/launch/test-nss-cache.c
    functionUses: 0
    functionsReached:
    - test_nss_cache
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: POLICY_RECORD_INIT_CONNECT
    functionSourceFile: /src/dbus-broker/src/launch/policy.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: POLICY_RECORD_INIT_CONNECT(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: POLICY_RECORD_INIT_OWN
    functionSourceFile: /src/dbus-broker/src/launch/policy.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: POLICY_RECORD_INIT_OWN(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: POLICY_RECORD_INIT_XMIT
    functionSourceFile: /src/dbus-broker/src/launch/policy.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: POLICY_RECORD_INIT_XMIT(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: POLICY_RECORD_INIT_SELINUX
    functionSourceFile: /src/dbus-broker/src/launch/policy.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: POLICY_RECORD_INIT_SELINUX(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 80
    functionName: POLICY_ENTRIES_NULL
    functionSourceFile: /src/dbus-broker/src/launch/policy.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: POLICY_ENTRIES_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 93
    functionName: POLICY_NODE_NULL
    functionSourceFile: /src/dbus-broker/src/launch/policy.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: POLICY_NODE_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 120
    functionName: POLICY_INIT
    functionSourceFile: /src/dbus-broker/src/launch/policy.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: POLICY_INIT(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/service.c:28,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/service.c:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - log
    - error
    argTypes:
    - Log*
    - sd_bus_error*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: log_append_bus_error
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 1
    functionsReached:
    - log_appendf
    linkageType: ''
    returnType: void
    signature: void log_append_bus_error(Log *log, const sd_bus_error *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/service.c:34,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - log
    - path
    argTypes:
    - Log*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: log_append_service_path
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 2
    functionsReached:
    - log_appendf
    linkageType: ''
    returnType: void
    signature: void log_append_service_path(Log *log, const char *path)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/service.c:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - log
    - name
    argTypes:
    - Log*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: log_append_service_name
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 1
    functionsReached:
    - log_appendf
    linkageType: ''
    returnType: void
    signature: void log_append_service_name(Log *log, const char *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/service.c:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - log
    - unit
    argTypes:
    - Log*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: log_append_service_unit
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 0
    functionsReached:
    - log_appendf
    linkageType: ''
    returnType: void
    signature: void log_append_service_unit(Log *log, const char *unit)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/service.c:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - log
    - user
    argTypes:
    - Log*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: log_append_service_user
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 1
    functionsReached:
    - log_appendf
    linkageType: ''
    returnType: void
    signature: void log_append_service_user(Log *log, const char *user)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: log_append_service_name
      Src: /src/dbus-broker/src/launch/service.c:53,1
    - Dst: log_append_service_path
      Src: /src/dbus-broker/src/launch/service.c:56,1
    - Dst: log_append_service_unit
      Src: /src/dbus-broker/src/launch/service.c:57,1
    - Dst: log_append_service_user
      Src: /src/dbus-broker/src/launch/service.c:58,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/service.c:59,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/service.c:65,1
    - Dst: log_append_service_path
      Src: /src/dbus-broker/src/launch/service.c:72,1
    - Dst: log_append_service_unit
      Src: /src/dbus-broker/src/launch/service.c:73,1
    - Dst: log_append_service_user
      Src: /src/dbus-broker/src/launch/service.c:74,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/service.c:75,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/service.c:81,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/service.c:89,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/launch/service.c:94,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - log
    - service
    argTypes:
    - Log*
    - Service*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 99
    functionName: log_append_service
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 0
    functionsReached:
    - log_appendf
    - log_append_service_path
    - log_append_service_user
    - log_append_service_unit
    - log_append_service_name
    linkageType: ''
    returnType: void
    signature: void log_append_service(Log *log, Service *service)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/service.c:112,1
    - Dst: calloc
      Src: /src/dbus-broker/src/launch/service.c:116,1
    - Dst: C_DECIMAL_MAX
      Src: /src/dbus-broker/src/launch/service.c:116,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:118,1
    - Dst: C_RBNODE_INIT
      Src: /src/dbus-broker/src/launch/service.c:121,1
    - Dst: C_RBNODE_INIT
      Src: /src/dbus-broker/src/launch/service.c:122,1
    - Dst: sprintf
      Src: /src/dbus-broker/src/launch/service.c:123,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/service.c:125,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:127,1
    - Dst: service_data_new
      Src: /src/dbus-broker/src/launch/service.c:129,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/service.c:131,1
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/launch/service.c:133,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/service.c:134,1
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/launch/service.c:135,1
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/launch/service.c:136,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 11
    argNames:
    - servicep
    - launcher
    - name
    - slot_by_name
    - parent_by_name
    - path
    - unit
    - argc
    - argv
    - user
    - uid
    argTypes:
    - Service**
    - Launcher*
    - char*
    - CRBNode**
    - CRBNode*
    - char*
    - char*
    - size_t
    - char**
    - char*
    - uid_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 141
    functionName: service_new
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 1
    functionsReached:
    - calloc
    - c_rbtree_find_slot
    - C_RBNODE_INIT
    - error_origin
    - c_rbtree_add
    - service_data_new
    - _c_cleanup_
    - strdup
    - sprintf
    - C_DECIMAL_MAX
    - error_fold
    - c_assert
    linkageType: ''
    returnType: int
    signature: "int service_new(Service **servicep,\n                Launcher *launcher,\n
      \               const char *name,\n                CRBNode **slot_by_name,\n
      \               CRBNode *parent_by_name,\n                const char *path,\n
      \               const char *unit,\n                size_t argc,\n                char
      **argv,\n                const char *user,\n                uid_t uid)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/launch/service.c:147,1
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/launch/service.c:148,1
    - Dst: service_data_free
      Src: /src/dbus-broker/src/launch/service.c:150,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/service.c:151,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/service.c:153,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/service.c:154,1
    - Dst: service_data_free
      Src: /src/dbus-broker/src/launch/service.c:155,1
    - Dst: sd_bus_slot_unref
      Src: /src/dbus-broker/src/launch/service.c:157,1
    - Dst: sd_bus_slot_unref
      Src: /src/dbus-broker/src/launch/service.c:158,1
    - Dst: sd_bus_slot_unref
      Src: /src/dbus-broker/src/launch/service.c:159,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/service.c:160,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - service
    argTypes:
    - Service*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 163
    functionName: service_free
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 2
    functionsReached:
    - c_rbnode_unlink
    - service_data_free
    - sd_bus_slot_unref
    - free
    linkageType: ''
    returnType: Service
    signature: Service *service_free(Service *service)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: service_data_new
      Src: /src/dbus-broker/src/launch/service.c:169,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/service.c:171,1
    - Dst: service_data_free
      Src: /src/dbus-broker/src/launch/service.c:173,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 7
    argNames:
    - service
    - path
    - unit
    - argc
    - argv
    - user
    - uid
    argTypes:
    - Service*
    - char*
    - char*
    - size_t
    - char**
    - char*
    - uid_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 176
    functionName: service_update
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 1
    functionsReached:
    - error_fold
    - service_data_free
    - service_data_new
    linkageType: ''
    returnType: int
    signature: int service_update(Service *service, const char *path, const char *unit,
      size_t argc, char **argv, const char *user, uid_t uid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/launch/service.c:179,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/service.c:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - k
    - n
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 182
    functionName: service_compare
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 0
    functionsReached:
    - strcmp
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int service_compare(CRBTree *t, void *k, CRBNode *n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/launch/service.c:185,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/service.c:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - k
    - n
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 188
    functionName: service_compare_by_name
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 0
    functionsReached:
    - strcmp
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int service_compare_by_name(CRBTree *t, void *k, CRBNode *n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_free
      Src: /src/dbus-broker/src/launch/service.c:191,1
    - Dst: c_free
      Src: /src/dbus-broker/src/launch/service.c:192,1
    - Dst: service_data_free
      Src: /src/dbus-broker/src/launch/service.c:193,1
    - Dst: sd_bus_slot_unref
      Src: /src/dbus-broker/src/launch/service.c:195,1
    - Dst: sd_bus_slot_unref
      Src: /src/dbus-broker/src/launch/service.c:196,1
    - Dst: sd_bus_slot_unref
      Src: /src/dbus-broker/src/launch/service.c:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - service
    argTypes:
    - Service*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 198
    functionName: service_discard_activation
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 0
    functionsReached:
    - service_data_free
    - sd_bus_slot_unref
    - c_free
    linkageType: ''
    returnType: void
    signature: void service_discard_activation(Service *service)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/service.c:201,1
    - Dst: service_discard_activation
      Src: /src/dbus-broker/src/launch/service.c:204,1
    - Dst: asprintf
      Src: /src/dbus-broker/src/launch/service.c:206,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:208,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/src/launch/service.c:210,1
    - Dst: controller_name_error_to_string
      Src: /src/dbus-broker/src/launch/service.c:219,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:221,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - service
    - name_error
    argTypes:
    - Service*
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 200
    functionDepth: 2
    functionLinenumber: 200
    functionLinenumberEnd: 224
    functionName: service_reset_activation
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 0
    functionsReached:
    - controller_name_error_to_string
    - sd_bus_call_method
    - service_discard_activation
    - error_origin
    - _c_cleanup_
    - asprintf
    linkageType: ''
    returnType: int
    signature: int service_reset_activation(Service *service, unsigned int name_error)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/src/launch/service.c:247,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:249,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/service.c:251,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/service.c:254,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/service.c:254,1
    - Dst: c_free
      Src: /src/dbus-broker/src/launch/service.c:259,1
    - Dst: sd_bus_slot_unref
      Src: /src/dbus-broker/src/launch/service.c:260,1
    - Dst: service_reset_activation
      Src: /src/dbus-broker/src/launch/service.c:266,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/service.c:268,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/service.c:273,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - message
    - userdata
    - errorp
    argTypes:
    - sd_bus_message*
    - void*
    - sd_bus_error*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 226
    functionDepth: 3
    functionLinenumber: 226
    functionLinenumberEnd: 277
    functionName: service_watch_jobs_handler
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 0
    functionsReached:
    - service_reset_activation
    - error_origin
    - c_free
    - sd_bus_slot_unref
    - error_trace
    - sd_bus_message_read
    - strcmp
    linkageType: ''
    returnType: int
    signature: int service_watch_jobs_handler(sd_bus_message *message, void *userdata,
      sd_bus_error *errorp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/dbus-broker/src/launch/service.c:282,1
    - Dst: assert
      Src: /src/dbus-broker/src/launch/service.c:283,1
    - Dst: sd_bus_match_signal_async
      Src: /src/dbus-broker/src/launch/service.c:285,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:297,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - service
    argTypes:
    - Service*
    assertStmts:
    - condition: (!service->slot_watch_jobs)
      pos:
        line_end: 281
        line_start: 281
        source_file: /src/dbus-broker/src/launch/service.c
    - condition: (!service->job)
      pos:
        line_end: 282
        line_start: 282
        source_file: /src/dbus-broker/src/launch/service.c
    constantsTouched: []
    func_position:
      end: 300
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 300
    functionName: service_watch_jobs
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 0
    functionsReached:
    - sd_bus_match_signal_async
    - error_origin
    - assert
    linkageType: ''
    returnType: int
    signature: int service_watch_jobs(Service *service)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_slot_unref
      Src: /src/dbus-broker/src/launch/service.c:310,1
    - Dst: sd_bus_message_get_error
      Src: /src/dbus-broker/src/launch/service.c:312,1
    - Dst: assert
      Src: /src/dbus-broker/src/launch/service.c:320,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/src/launch/service.c:322,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:324,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/service.c:326,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:328,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/service.c:341,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/service.c:367,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/service.c:369,1
    - Dst: log_append_bus_error
      Src: /src/dbus-broker/src/launch/service.c:370,1
    - Dst: log_append_service
      Src: /src/dbus-broker/src/launch/service.c:371,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/service.c:373,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/service.c:378,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/service.c:382,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/service.c:384,1
    - Dst: log_append_bus_error
      Src: /src/dbus-broker/src/launch/service.c:385,1
    - Dst: log_append_service
      Src: /src/dbus-broker/src/launch/service.c:386,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/service.c:388,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/service.c:393,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/launch/service.c:398,1
    - Dst: log_append_bus_error
      Src: /src/dbus-broker/src/launch/service.c:399,1
    - Dst: log_append_service
      Src: /src/dbus-broker/src/launch/service.c:400,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/launch/service.c:402,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/service.c:406,1
    - Dst: service_reset_activation
      Src: /src/dbus-broker/src/launch/service.c:414,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/service.c:416,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 51
    argCount: 3
    argNames:
    - message
    - userdata
    - errorp
    argTypes:
    - sd_bus_message*
    - void*
    - sd_bus_error*
    assertStmts:
    - condition: (!service->job)
      pos:
        line_end: 319
        line_start: 319
        source_file: /src/dbus-broker/src/launch/service.c
    constantsTouched: []
    func_position:
      end: 419
      start: 302
    functionDepth: 3
    functionLinenumber: 302
    functionLinenumberEnd: 419
    functionName: service_start_unit_handler
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 0
    functionsReached:
    - log_append_service
    - log_commitf
    - assert
    - sd_bus_message_get_error
    - service_reset_activation
    - log_append_here
    - error_origin
    - sd_bus_slot_unref
    - log_append_bus_error
    - error_trace
    - strdup
    - sd_bus_message_read
    - strcmp
    - error_fold
    linkageType: ''
    returnType: int
    signature: int service_start_unit_handler(sd_bus_message *message, void *userdata,
      sd_bus_error *errorp)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/service.c:423,1
    - Dst: sd_bus_message_new_method_call
      Src: /src/dbus-broker/src/launch/service.c:426,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:432,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/service.c:434,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:436,1
    - Dst: sd_bus_call_async
      Src: /src/dbus-broker/src/launch/service.c:438,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:440,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - service
    argTypes:
    - Service*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 421
    functionDepth: 1
    functionLinenumber: 421
    functionLinenumberEnd: 443
    functionName: service_start_unit
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 0
    functionsReached:
    - sd_bus_call_async
    - sd_bus_message_new_method_call
    - sd_bus_message_append
    - error_origin
    - _c_cleanup_
    linkageType: ''
    returnType: int
    signature: int service_start_unit(Service *service)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/service.c:447,1
    - Dst: sd_bus_message_new_method_call
      Src: /src/dbus-broker/src/launch/service.c:450,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:456,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/service.c:458,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:460,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/service.c:462,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:464,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/service.c:467,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:469,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/service.c:472,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:474,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/service.c:476,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:478,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/service.c:481,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:483,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/service.c:486,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:488,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/service.c:491,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:493,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/service.c:495,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:497,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/service.c:501,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:503,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/service.c:507,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:509,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/service.c:511,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:513,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/service.c:516,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:518,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/service.c:521,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:523,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/service.c:526,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:528,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/service.c:531,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:533,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/service.c:535,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:537,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/service.c:540,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:542,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/service.c:544,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:546,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/service.c:549,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:551,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/service.c:554,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:556,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/service.c:559,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:561,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/service.c:563,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:565,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/service.c:568,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:570,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/service.c:572,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:574,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/service.c:577,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:579,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/service.c:582,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:584,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/service.c:587,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:589,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/service.c:604,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:606,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/service.c:609,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:611,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/service.c:613,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:615,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/service.c:618,1
    - Dst: asprintf
      Src: /src/dbus-broker/src/launch/service.c:627,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:629,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/service.c:631,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:633,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/service.c:636,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:638,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/service.c:641,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:643,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/service.c:647,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:649,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/service.c:651,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:653,1
    - Dst: sd_bus_call_async
      Src: /src/dbus-broker/src/launch/service.c:655,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:657,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 137
    argCount: 1
    argNames:
    - service
    argTypes:
    - Service*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 445
    functionDepth: 1
    functionLinenumber: 445
    functionLinenumberEnd: 660
    functionName: service_start_transient_unit
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 0
    functionsReached:
    - sd_bus_call_async
    - sd_bus_message_new_method_call
    - sd_bus_message_append
    - sd_bus_message_open_container
    - error_origin
    - _c_cleanup_
    - sd_bus_message_close_container
    - asprintf
    linkageType: ''
    returnType: int
    signature: int service_start_transient_unit(Service *service)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/src/launch/service.c:694,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:696,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/service.c:700,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/src/launch/service.c:705,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:707,1
    - Dst: sd_bus_message_at_end
      Src: /src/dbus-broker/src/launch/service.c:709,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/src/launch/service.c:710,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:712,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/src/launch/service.c:714,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:716,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/service.c:718,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/src/launch/service.c:719,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:721,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/src/launch/service.c:723,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:725,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/src/launch/service.c:727,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:729,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/service.c:730,1
    - Dst: sd_bus_message_enter_container
      Src: /src/dbus-broker/src/launch/service.c:731,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:733,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/src/launch/service.c:735,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:737,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/src/launch/service.c:739,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:741,1
    - Dst: sd_bus_message_skip
      Src: /src/dbus-broker/src/launch/service.c:743,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:745,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/src/launch/service.c:748,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:750,1
    - Dst: sd_bus_message_exit_container
      Src: /src/dbus-broker/src/launch/service.c:753,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:755,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/service.c:777,1
    - Dst: service_reset_activation
      Src: /src/dbus-broker/src/launch/service.c:778,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/service.c:780,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 59
    argCount: 3
    argNames:
    - message
    - userdata
    - errorp
    argTypes:
    - sd_bus_message*
    - void*
    - sd_bus_error*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 784
      start: 662
    functionDepth: 3
    functionLinenumber: 662
    functionLinenumberEnd: 784
    functionName: service_watch_unit_handler
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 0
    functionsReached:
    - sd_bus_message_skip
    - service_reset_activation
    - error_origin
    - sd_bus_message_exit_container
    - error_trace
    - sd_bus_message_read
    - sd_bus_message_at_end
    - strcmp
    - sd_bus_message_enter_container
    linkageType: ''
    returnType: int
    signature: int service_watch_unit_handler(sd_bus_message *message, void *userdata,
      sd_bus_error *errorp)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_slot_unref
      Src: /src/dbus-broker/src/launch/service.c:791,1
    - Dst: sd_bus_message_get_error
      Src: /src/dbus-broker/src/launch/service.c:793,1
    - Dst: service_reset_activation
      Src: /src/dbus-broker/src/launch/service.c:794,1
    - Dst: sd_bus_message_read
      Src: /src/dbus-broker/src/launch/service.c:798,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:800,1
    - Dst: sd_bus_match_signal_async
      Src: /src/dbus-broker/src/launch/service.c:802,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:814,1
    - Dst: service_start_transient_unit
      Src: /src/dbus-broker/src/launch/service.c:823,1
    - Dst: service_start_unit
      Src: /src/dbus-broker/src/launch/service.c:825,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/service.c:827,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - message
    - userdata
    - errorp
    argTypes:
    - sd_bus_message*
    - void*
    - sd_bus_error*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 786
    functionDepth: 3
    functionLinenumber: 786
    functionLinenumberEnd: 830
    functionName: service_watch_unit_load_handler
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 0
    functionsReached:
    - sd_bus_message_get_error
    - service_reset_activation
    - service_start_unit
    - error_origin
    - service_start_transient_unit
    - sd_bus_match_signal_async
    - sd_bus_slot_unref
    - sd_bus_message_read
    - error_fold
    linkageType: ''
    returnType: int
    signature: int service_watch_unit_load_handler(sd_bus_message *message, void *userdata,
      sd_bus_error *errorp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/dbus-broker/src/launch/service.c:835,1
    - Dst: sd_bus_call_method_async
      Src: /src/dbus-broker/src/launch/service.c:850,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:863,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - service
    - unit
    argTypes:
    - Service*
    - char*
    assertStmts:
    - condition: (!service->slot_watch_unit)
      pos:
        line_end: 834
        line_start: 834
        source_file: /src/dbus-broker/src/launch/service.c
    constantsTouched: []
    func_position:
      end: 866
      start: 832
    functionDepth: 1
    functionLinenumber: 832
    functionLinenumberEnd: 866
    functionName: service_watch_unit
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 0
    functionsReached:
    - sd_bus_call_method_async
    - error_origin
    - assert
    linkageType: ''
    returnType: int
    signature: int service_watch_unit(Service *service, const char *unit)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/service.c:904,1
    - Dst: service_discard_activation
      Src: /src/dbus-broker/src/launch/service.c:909,1
    - Dst: service_data_duplicate
      Src: /src/dbus-broker/src/launch/service.c:912,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/service.c:914,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/service.c:916,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/service.c:926,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/service.c:927,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/service.c:930,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:932,1
    - Dst: sd_bus_get_unique_name
      Src: /src/dbus-broker/src/launch/service.c:934,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:936,1
    - Dst: systemd_escape_unit
      Src: /src/dbus-broker/src/launch/service.c:938,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/service.c:940,1
    - Dst: asprintf
      Src: /src/dbus-broker/src/launch/service.c:942,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:950,1
    - Dst: service_watch_jobs
      Src: /src/dbus-broker/src/launch/service.c:970,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/service.c:972,1
    - Dst: service_watch_unit
      Src: /src/dbus-broker/src/launch/service.c:974,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/service.c:976,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 2
    argNames:
    - service
    - serial
    argTypes:
    - Service*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 985
      start: 903
    functionDepth: 2
    functionLinenumber: 903
    functionLinenumberEnd: 985
    functionName: service_activate
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 1
    functionsReached:
    - asprintf
    - service_discard_activation
    - error_origin
    - sd_bus_get_unique_name
    - _c_cleanup_
    - service_watch_jobs
    - service_watch_unit
    - service_data_duplicate
    - strdup
    - c_assert
    - strcmp
    - systemd_escape_unit
    - error_fold
    linkageType: ''
    returnType: int
    signature: int service_activate(Service *service, uint64_t serial)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/service.c:989,1
    - Dst: asprintf
      Src: /src/dbus-broker/src/launch/service.c:995,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:997,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/src/launch/service.c:999,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:1011,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - service
    argTypes:
    - Service*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1015
      start: 987
    functionDepth: 1
    functionLinenumber: 987
    functionLinenumberEnd: 1015
    functionName: service_add
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 1
    functionsReached:
    - _c_cleanup_
    - asprintf
    - error_origin
    - sd_bus_call_method
    linkageType: ''
    returnType: int
    signature: int service_add(Service *service)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/service.c:1019,1
    - Dst: service_discard_activation
      Src: /src/dbus-broker/src/launch/service.c:1025,1
    - Dst: asprintf
      Src: /src/dbus-broker/src/launch/service.c:1027,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:1029,1
    - Dst: sd_bus_call_method
      Src: /src/dbus-broker/src/launch/service.c:1031,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:1040,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - service
    argTypes:
    - Service*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1044
      start: 1017
    functionDepth: 2
    functionLinenumber: 1017
    functionLinenumberEnd: 1044
    functionName: service_remove
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 1
    functionsReached:
    - sd_bus_call_method
    - service_discard_activation
    - error_origin
    - _c_cleanup_
    - asprintf
    linkageType: ''
    returnType: int
    signature: int service_remove(Service *service)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/service.c:1055,1
    - Dst: calloc
      Src: /src/dbus-broker/src/launch/service.c:1058,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:1060,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/service.c:1063,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:1065,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/service.c:1069,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:1071,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/service.c:1075,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:1077,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/service.c:1084,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/service.c:1086,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 7
    argNames:
    - datap
    - path
    - unit
    - user
    - uid
    - argc
    - argv
    argTypes:
    - ServiceData**
    - char*
    - char*
    - char*
    - uid_t
    - size_t
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1092
      start: 1046
    functionDepth: 1
    functionLinenumber: 1046
    functionLinenumberEnd: 1092
    functionName: service_data_new
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 2
    functionsReached:
    - _c_cleanup_
    - strdup
    - error_origin
    - calloc
    linkageType: ''
    returnType: int
    signature: "int service_data_new(\n        ServiceData **datap,\n        const
      char *path,\n        const char *unit,\n        const char *user,\n        uid_t
      uid,\n        size_t argc,\n        char **argv\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_free
      Src: /src/dbus-broker/src/launch/service.c:1101,1
    - Dst: c_free
      Src: /src/dbus-broker/src/launch/service.c:1103,1
    - Dst: c_free
      Src: /src/dbus-broker/src/launch/service.c:1104,1
    - Dst: c_free
      Src: /src/dbus-broker/src/launch/service.c:1105,1
    - Dst: c_free
      Src: /src/dbus-broker/src/launch/service.c:1106,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - data
    argTypes:
    - ServiceData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1094
    functionDepth: 0
    functionLinenumber: 1094
    functionLinenumberEnd: 1109
    functionName: service_data_free
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 3
    functionsReached:
    - c_free
    linkageType: ''
    returnType: ServiceData
    signature: ServiceData *service_data_free(ServiceData *data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: service_data_new
      Src: /src/dbus-broker/src/launch/service.c:1112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - data
    - dupp
    argTypes:
    - ServiceData*
    - ServiceData**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1121
      start: 1111
    functionDepth: 2
    functionLinenumber: 1111
    functionLinenumberEnd: 1121
    functionName: service_data_duplicate
    functionSourceFile: /src/dbus-broker/src/launch/service.c
    functionUses: 1
    functionsReached:
    - service_data_new
    linkageType: ''
    returnType: int
    signature: int service_data_duplicate(ServiceData *data, ServiceData **dupp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/policy.c:20,1
    - Dst: calloc
      Src: /src/dbus-broker/src/launch/policy.c:22,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:24,1
    - Dst: POLICY_RECORD_INIT_CONNECT
      Src: /src/dbus-broker/src/launch/policy.c:26,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - recordp
    argTypes:
    - PolicyRecord**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 19
    functionDepth: 1
    functionLinenumber: 19
    functionLinenumberEnd: 31
    functionName: policy_record_new_connect
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - POLICY_RECORD_INIT_CONNECT
    - _c_cleanup_
    - error_origin
    - calloc
    linkageType: ''
    returnType: int
    signature: int policy_record_new_connect(PolicyRecord **recordp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/policy.c:37,1
    - Dst: calloc
      Src: /src/dbus-broker/src/launch/policy.c:39,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:41,1
    - Dst: POLICY_RECORD_INIT_OWN
      Src: /src/dbus-broker/src/launch/policy.c:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - recordp
    argTypes:
    - PolicyRecord**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 48
    functionName: policy_record_new_own
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - _c_cleanup_
    - POLICY_RECORD_INIT_OWN
    - error_origin
    - calloc
    linkageType: ''
    returnType: int
    signature: int policy_record_new_own(PolicyRecord **recordp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/policy.c:54,1
    - Dst: calloc
      Src: /src/dbus-broker/src/launch/policy.c:56,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:58,1
    - Dst: POLICY_RECORD_INIT_XMIT
      Src: /src/dbus-broker/src/launch/policy.c:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - recordp
    argTypes:
    - PolicyRecord**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 65
    functionName: policy_record_new_xmit
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - _c_cleanup_
    - POLICY_RECORD_INIT_XMIT
    - error_origin
    - calloc
    linkageType: ''
    returnType: int
    signature: int policy_record_new_xmit(PolicyRecord **recordp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/policy.c:71,1
    - Dst: calloc
      Src: /src/dbus-broker/src/launch/policy.c:73,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:75,1
    - Dst: POLICY_RECORD_INIT_SELINUX
      Src: /src/dbus-broker/src/launch/policy.c:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - recordp
    argTypes:
    - PolicyRecord**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 82
    functionName: policy_record_new_selinux
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - _c_cleanup_
    - POLICY_RECORD_INIT_SELINUX
    - error_origin
    - calloc
    linkageType: ''
    returnType: int
    signature: int policy_record_new_selinux(PolicyRecord **recordp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/launch/policy.c:91,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/policy.c:92,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - record
    argTypes:
    - PolicyRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 95
    functionName: policy_record_free
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - c_list_unlink
    - free
    linkageType: ''
    returnType: PolicyRecord
    signature: PolicyRecord *policy_record_free(PolicyRecord *record)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/policy.c:98,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/policy.c:100,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/policy.c:102,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/policy.c:104,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 9
    argCount: 1
    argNames:
    - record
    argTypes:
    - PolicyRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 106
    functionName: policy_record_xmit_trim
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void policy_record_xmit_trim(PolicyRecord *record)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/launch/policy.c:111,1
    - Dst: policy_record_free
      Src: /src/dbus-broker/src/launch/policy.c:112,1
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/launch/policy.c:113,1
    - Dst: policy_record_free
      Src: /src/dbus-broker/src/launch/policy.c:114,1
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/launch/policy.c:115,1
    - Dst: policy_record_free
      Src: /src/dbus-broker/src/launch/policy.c:116,1
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/launch/policy.c:117,1
    - Dst: policy_record_free
      Src: /src/dbus-broker/src/launch/policy.c:118,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - entries
    argTypes:
    - PolicyEntries*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 119
    functionName: policy_entries_deinit
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - policy_record_free
    - c_list_first_entry
    linkageType: ''
    returnType: void
    signature: void policy_entries_deinit(PolicyEntries *entries)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/launch/policy.c:122,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/launch/policy.c:123,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/launch/policy.c:124,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/launch/policy.c:125,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 1
    argNames:
    - entries
    argTypes:
    - PolicyEntries*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 126
    functionName: policy_entries_is_empty
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - c_list_is_empty
    linkageType: ''
    returnType: bool
    signature: bool policy_entries_is_empty(PolicyEntries *entries)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/launch/policy.c:129,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - t
    - k
    - n
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 138
    functionName: policy_node_compare
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int policy_node_compare(CRBTree *t, void *k, CRBNode *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: policy_entries_deinit
      Src: /src/dbus-broker/src/launch/policy.c:144,1
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/launch/policy.c:146,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/policy.c:147,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - PolicyNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 150
    functionName: policy_node_free
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - c_rbnode_unlink
    - policy_entries_deinit
    - free
    linkageType: ''
    returnType: PolicyNode
    signature: PolicyNode *policy_node_free(PolicyNode *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/policy.c:155,1
    - Dst: calloc
      Src: /src/dbus-broker/src/launch/policy.c:157,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:159,1
    - Dst: POLICY_NODE_NULL
      Src: /src/dbus-broker/src/launch/policy.c:161,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - nodep
    - uidgid
    argTypes:
    - PolicyNode**
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 167
    functionName: policy_node_new
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - _c_cleanup_
    - POLICY_NODE_NULL
    - error_origin
    - calloc
    linkageType: ''
    returnType: int
    signature: int policy_node_new(PolicyNode **nodep, uint32_t uidgid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: POLICY_INIT
      Src: /src/dbus-broker/src/launch/policy.c:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - policy
    argTypes:
    - Policy*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 174
    functionName: policy_init
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - POLICY_INIT
    linkageType: ''
    returnType: void
    signature: void policy_init(Policy *policy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/launch/policy.c:183,1
    - Dst: policy_record_free
      Src: /src/dbus-broker/src/launch/policy.c:184,1
    - Dst: c_rbtree_for_each_entry_safe_postorder_unlink
      Src: /src/dbus-broker/src/launch/policy.c:186,1
    - Dst: policy_node_free
      Src: /src/dbus-broker/src/launch/policy.c:187,1
    - Dst: c_rbtree_for_each_entry_safe_postorder_unlink
      Src: /src/dbus-broker/src/launch/policy.c:188,1
    - Dst: policy_node_free
      Src: /src/dbus-broker/src/launch/policy.c:189,1
    - Dst: policy_entries_deinit
      Src: /src/dbus-broker/src/launch/policy.c:191,1
    - Dst: policy_entries_deinit
      Src: /src/dbus-broker/src/launch/policy.c:192,1
    - Dst: policy_entries_deinit
      Src: /src/dbus-broker/src/launch/policy.c:193,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - policy
    argTypes:
    - Policy*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 179
    functionDepth: 3
    functionLinenumber: 179
    functionLinenumberEnd: 194
    functionName: policy_deinit
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - c_list_first_entry
    - c_rbtree_for_each_entry_safe_postorder_unlink
    - policy_record_free
    - policy_node_free
    - policy_entries_deinit
    linkageType: ''
    returnType: void
    signature: void policy_deinit(Policy *policy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/launch/policy.c:201,1
    - Dst: policy_node_new
      Src: /src/dbus-broker/src/launch/policy.c:206,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:208,1
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/launch/policy.c:210,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/launch/policy.c:212,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - tree
    - nodep
    - uidgid
    argTypes:
    - CRBTree*
    - PolicyNode**
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 196
    functionDepth: 2
    functionLinenumber: 196
    functionLinenumberEnd: 218
    functionName: policy_at_uidgid
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - c_rbtree_find_slot
    - c_rbtree_add
    - error_trace
    - c_container_of
    - policy_node_new
    linkageType: ''
    returnType: int
    signature: int policy_at_uidgid(CRBTree *tree, PolicyNode **nodep, uint32_t uidgid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: policy_at_uidgid
      Src: /src/dbus-broker/src/launch/policy.c:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - policy
    - nodep
    - uid
    argTypes:
    - Policy*
    - PolicyNode**
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 220
    functionDepth: 3
    functionLinenumber: 220
    functionLinenumberEnd: 222
    functionName: policy_at_uid
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - policy_at_uidgid
    linkageType: ''
    returnType: int
    signature: int policy_at_uid(Policy *policy, PolicyNode **nodep, uint32_t uid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: policy_at_uidgid
      Src: /src/dbus-broker/src/launch/policy.c:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - policy
    - nodep
    - gid
    argTypes:
    - Policy*
    - PolicyNode**
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 224
    functionDepth: 3
    functionLinenumber: 224
    functionLinenumberEnd: 226
    functionName: policy_at_gid
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - policy_at_uidgid
    linkageType: ''
    returnType: int
    signature: int policy_at_gid(Policy *policy, PolicyNode **nodep, uint32_t gid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/policy.c:231,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/policy.c:232,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/policy.c:233,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/policy.c:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - policy
    - record
    - cnode
    argTypes:
    - Policy*
    - PolicyRecord*
    - ConfigNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 240
    functionName: policy_import_verdict
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - c_assert
    linkageType: ''
    returnType: void
    signature: "void policy_import_verdict(Policy *policy,\n                                  PolicyRecord
      *record,\n                                  ConfigNode *cnode)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/policy.c:243,1
    - Dst: policy_record_new_connect
      Src: /src/dbus-broker/src/launch/policy.c:255,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:257,1
    - Dst: policy_at_uid
      Src: /src/dbus-broker/src/launch/policy.c:262,1
    - Dst: getuid
      Src: /src/dbus-broker/src/launch/policy.c:262,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:264,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:266,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - policy
    argTypes:
    - Policy*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 242
    functionDepth: 4
    functionLinenumber: 242
    functionLinenumberEnd: 270
    functionName: policy_import_connect_self
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - c_list_link_tail
    - policy_record_new_connect
    - _c_cleanup_
    - error_trace
    - policy_at_uid
    - getuid
    linkageType: ''
    returnType: int
    signature: int policy_import_connect_self(Policy *policy)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/policy.c:273,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/policy.c:277,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/policy.c:278,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/policy.c:298,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/policy.c:305,1
    - Dst: policy_record_new_connect
      Src: /src/dbus-broker/src/launch/policy.c:310,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:312,1
    - Dst: policy_import_verdict
      Src: /src/dbus-broker/src/launch/policy.c:314,1
    - Dst: policy_at_uid
      Src: /src/dbus-broker/src/launch/policy.c:317,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:319,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:321,1
    - Dst: policy_at_gid
      Src: /src/dbus-broker/src/launch/policy.c:323,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:325,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:327,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:329,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 32
    argCount: 2
    argNames:
    - policy
    - cnode
    argTypes:
    - Policy*
    - ConfigNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 272
    functionDepth: 4
    functionLinenumber: 272
    functionLinenumberEnd: 334
    functionName: policy_import_connect
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - policy_at_gid
    - c_list_link_tail
    - policy_record_new_connect
    - _c_cleanup_
    - error_trace
    - c_assert
    - policy_import_verdict
    - policy_at_uid
    - fprintf
    linkageType: ''
    returnType: int
    signature: int policy_import_connect(Policy *policy, ConfigNode *cnode)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/policy.c:337,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/policy.c:341,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/policy.c:342,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/policy.c:362,1
    - Dst: policy_record_new_own
      Src: /src/dbus-broker/src/launch/policy.c:367,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:369,1
    - Dst: policy_import_verdict
      Src: /src/dbus-broker/src/launch/policy.c:371,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/policy.c:374,1
    - Dst: policy_at_uid
      Src: /src/dbus-broker/src/launch/policy.c:388,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:390,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:392,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:395,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:397,1
    - Dst: policy_at_gid
      Src: /src/dbus-broker/src/launch/policy.c:400,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:402,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:404,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:407,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/launch/policy.c:410,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 51
    argCount: 2
    argNames:
    - policy
    - cnode
    argTypes:
    - Policy*
    - ConfigNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 336
    functionDepth: 4
    functionLinenumber: 336
    functionLinenumberEnd: 413
    functionName: policy_import_own
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - policy_at_gid
    - c_list_is_linked
    - c_list_link_tail
    - policy_record_new_own
    - _c_cleanup_
    - error_trace
    - c_assert
    - strcmp
    - policy_import_verdict
    - policy_at_uid
    - fprintf
    linkageType: ''
    returnType: int
    signature: int policy_import_own(Policy *policy, ConfigNode *cnode)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/policy.c:416,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/policy.c:420,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/policy.c:421,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/policy.c:434,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/policy.c:443,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/policy.c:446,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/policy.c:456,1
    - Dst: policy_record_new_xmit
      Src: /src/dbus-broker/src/launch/policy.c:463,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:465,1
    - Dst: policy_import_verdict
      Src: /src/dbus-broker/src/launch/policy.c:467,1
    - Dst: policy_record_xmit_trim
      Src: /src/dbus-broker/src/launch/policy.c:477,1
    - Dst: policy_at_uid
      Src: /src/dbus-broker/src/launch/policy.c:481,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:483,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:485,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:488,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:490,1
    - Dst: policy_at_gid
      Src: /src/dbus-broker/src/launch/policy.c:493,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:495,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:497,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:500,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/launch/policy.c:503,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 62
    argCount: 2
    argNames:
    - policy
    - cnode
    argTypes:
    - Policy*
    - ConfigNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 415
    functionDepth: 4
    functionLinenumber: 415
    functionLinenumberEnd: 506
    functionName: policy_import_send
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - policy_at_gid
    - policy_record_xmit_trim
    - c_list_is_linked
    - c_list_link_tail
    - policy_record_new_xmit
    - _c_cleanup_
    - error_trace
    - c_assert
    - policy_import_verdict
    - policy_at_uid
    - fprintf
    linkageType: ''
    returnType: int
    signature: int policy_import_send(Policy *policy, ConfigNode *cnode)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/policy.c:509,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/policy.c:513,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/policy.c:514,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/policy.c:528,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/policy.c:537,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/policy.c:540,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/policy.c:550,1
    - Dst: policy_record_new_xmit
      Src: /src/dbus-broker/src/launch/policy.c:557,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:559,1
    - Dst: policy_import_verdict
      Src: /src/dbus-broker/src/launch/policy.c:561,1
    - Dst: policy_record_xmit_trim
      Src: /src/dbus-broker/src/launch/policy.c:570,1
    - Dst: policy_at_uid
      Src: /src/dbus-broker/src/launch/policy.c:574,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:576,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:578,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:581,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:583,1
    - Dst: policy_at_gid
      Src: /src/dbus-broker/src/launch/policy.c:586,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:588,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:590,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:593,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/launch/policy.c:596,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 61
    argCount: 2
    argNames:
    - policy
    - cnode
    argTypes:
    - Policy*
    - ConfigNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 599
      start: 508
    functionDepth: 4
    functionLinenumber: 508
    functionLinenumberEnd: 599
    functionName: policy_import_recv
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - policy_at_gid
    - policy_record_xmit_trim
    - c_list_is_linked
    - c_list_link_tail
    - policy_record_new_xmit
    - _c_cleanup_
    - error_trace
    - c_assert
    - policy_import_verdict
    - policy_at_uid
    - fprintf
    linkageType: ''
    returnType: int
    signature: int policy_import_recv(Policy *policy, ConfigNode *cnode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/policy.c:602,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/policy.c:605,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/policy.c:606,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/policy.c:610,1
    - Dst: policy_record_new_own
      Src: /src/dbus-broker/src/launch/policy.c:615,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:617,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/policy.c:622,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - policy
    - cnode
    argTypes:
    - Policy*
    - ConfigNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 601
    functionDepth: 2
    functionLinenumber: 601
    functionLinenumberEnd: 626
    functionName: policy_import_selinux
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - c_list_link_tail
    - policy_record_new_own
    - _c_cleanup_
    - error_trace
    - c_assert
    - fprintf
    linkageType: ''
    returnType: int
    signature: int policy_import_selinux(Policy *policy, ConfigNode *cnode)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - policy
    - cnode
    argTypes:
    - Policy*
    - ConfigNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 628
    functionDepth: 0
    functionLinenumber: 628
    functionLinenumberEnd: 632
    functionName: policy_import_apparmor
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int policy_import_apparmor(Policy *policy, ConfigNode *cnode)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: policy_import_connect_self
      Src: /src/dbus-broker/src/launch/policy.c:641,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:643,1
    - Dst: c_list_for_each_entry
      Src: /src/dbus-broker/src/launch/policy.c:645,1
    - Dst: policy_import_selinux
      Src: /src/dbus-broker/src/launch/policy.c:652,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:654,1
    - Dst: policy_import_apparmor
      Src: /src/dbus-broker/src/launch/policy.c:659,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:661,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/policy.c:667,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/policy.c:678,1
    - Dst: policy_import_connect
      Src: /src/dbus-broker/src/launch/policy.c:685,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:687,1
    - Dst: policy_import_own
      Src: /src/dbus-broker/src/launch/policy.c:690,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:692,1
    - Dst: policy_import_send
      Src: /src/dbus-broker/src/launch/policy.c:701,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:703,1
    - Dst: policy_import_recv
      Src: /src/dbus-broker/src/launch/policy.c:712,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:714,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/policy.c:716,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 54
    argCount: 2
    argNames:
    - policy
    - root
    argTypes:
    - Policy*
    - ConfigRoot*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 637
    functionDepth: 5
    functionLinenumber: 637
    functionLinenumberEnd: 722
    functionName: policy_import
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 1
    functionsReached:
    - policy_import_connect
    - c_list_for_each_entry
    - policy_import_apparmor
    - policy_import_send
    - policy_import_connect_self
    - error_trace
    - policy_import_recv
    - policy_import_selinux
    - fprintf
    - policy_import_own
    linkageType: ''
    returnType: int
    signature: int policy_import(Policy *policy, ConfigRoot *root)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_list_for_each_entry
      Src: /src/dbus-broker/src/launch/policy.c:728,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - list
    argTypes:
    - CList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 724
    functionDepth: 0
    functionLinenumber: 724
    functionLinenumberEnd: 733
    functionName: policy_list_find_top
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - c_list_for_each_entry
    linkageType: ''
    returnType: PolicyRecord
    signature: PolicyRecord *policy_list_find_top(CList *list)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_list_for_each_entry_safe
      Src: /src/dbus-broker/src/launch/policy.c:738,1
    - Dst: policy_record_free
      Src: /src/dbus-broker/src/launch/policy.c:740,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - list
    - keep
    argTypes:
    - CList*
    - PolicyRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 741
      start: 735
    functionDepth: 1
    functionLinenumber: 735
    functionLinenumberEnd: 741
    functionName: policy_list_shrink
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - c_list_for_each_entry_safe
    - policy_record_free
    linkageType: ''
    returnType: void
    signature: void policy_list_shrink(CList *list, PolicyRecord *keep)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: policy_list_find_top
      Src: /src/dbus-broker/src/launch/policy.c:759,1
    - Dst: policy_list_shrink
      Src: /src/dbus-broker/src/launch/policy.c:760,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/launch/policy.c:763,1
    - Dst: policy_list_find_top
      Src: /src/dbus-broker/src/launch/policy.c:764,1
    - Dst: policy_list_shrink
      Src: /src/dbus-broker/src/launch/policy.c:767,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/launch/policy.c:771,1
    - Dst: policy_list_find_top
      Src: /src/dbus-broker/src/launch/policy.c:772,1
    - Dst: policy_list_shrink
      Src: /src/dbus-broker/src/launch/policy.c:775,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 1
    argNames:
    - policy
    argTypes:
    - Policy*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 777
      start: 743
    functionDepth: 2
    functionLinenumber: 743
    functionLinenumberEnd: 777
    functionName: policy_optimize_connect
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - policy_list_find_top
    - policy_list_shrink
    - c_rbtree_for_each_entry
    linkageType: ''
    returnType: void
    signature: void policy_optimize_connect(Policy *policy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_for_each_entry_safe
      Src: /src/dbus-broker/src/launch/policy.c:788,1
    - Dst: policy_entries_is_empty
      Src: /src/dbus-broker/src/launch/policy.c:789,1
    - Dst: policy_node_free
      Src: /src/dbus-broker/src/launch/policy.c:790,1
    - Dst: c_rbtree_for_each_entry_safe
      Src: /src/dbus-broker/src/launch/policy.c:792,1
    - Dst: policy_entries_is_empty
      Src: /src/dbus-broker/src/launch/policy.c:793,1
    - Dst: policy_node_free
      Src: /src/dbus-broker/src/launch/policy.c:794,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - policy
    argTypes:
    - Policy*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 779
    functionDepth: 3
    functionLinenumber: 779
    functionLinenumberEnd: 795
    functionName: policy_optimize_trim
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - policy_entries_is_empty
    - policy_node_free
    - c_rbtree_for_each_entry_safe
    linkageType: ''
    returnType: void
    signature: void policy_optimize_trim(Policy *policy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: policy_optimize_connect
      Src: /src/dbus-broker/src/launch/policy.c:806,1
    - Dst: policy_optimize_trim
      Src: /src/dbus-broker/src/launch/policy.c:807,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - policy
    argTypes:
    - Policy*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 808
      start: 800
    functionDepth: 4
    functionLinenumber: 800
    functionLinenumberEnd: 808
    functionName: policy_optimize
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 1
    functionsReached:
    - policy_optimize_connect
    - policy_optimize_trim
    linkageType: ''
    returnType: void
    signature: void policy_optimize(Policy *policy)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/launch/policy.c:815,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/policy.c:817,1
    - Dst: c_list_last_entry
      Src: /src/dbus-broker/src/launch/policy.c:817,1
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/launch/policy.c:821,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/policy.c:823,1
    - Dst: c_list_last_entry
      Src: /src/dbus-broker/src/launch/policy.c:823,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/policy.c:827,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/policy.c:829,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:831,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 4
    argNames:
    - policy
    - default_list
    - specific_list
    - m
    argTypes:
    - Policy*
    - CList*
    - CList*
    - sd_bus_message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 834
      start: 810
    functionDepth: 1
    functionLinenumber: 810
    functionLinenumberEnd: 834
    functionName: policy_export_connect
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - c_list_last_entry
    - c_list_first_entry
    - sd_bus_message_append
    - error_origin
    - c_assert
    linkageType: ''
    returnType: int
    signature: int policy_export_connect(Policy *policy, CList *default_list, CList
      *specific_list, sd_bus_message *m)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/policy.c:840,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:842,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/policy.c:846,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:853,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/policy.c:859,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:866,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/policy.c:870,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:872,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 4
    argNames:
    - policy
    - list1
    - list2
    - m
    argTypes:
    - Policy*
    - CList*
    - CList*
    - sd_bus_message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 875
      start: 836
    functionDepth: 1
    functionLinenumber: 836
    functionLinenumberEnd: 875
    functionName: policy_export_own
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - sd_bus_message_append
    - sd_bus_message_open_container
    - error_origin
    - sd_bus_message_close_container
    linkageType: ''
    returnType: int
    signature: int policy_export_own(Policy *policy, CList *list1, CList *list2, sd_bus_message
      *m)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/policy.c:846,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:853,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 845
    functionDepth: 1
    functionLinenumber: 845
    functionLinenumberEnd: 854
    functionName: c_list_for_each_entry
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 5
    functionsReached:
    - sd_bus_message_append
    - error_origin
    linkageType: ''
    returnType: void
    signature: void c_list_for_each_entry(i_record, list1, link)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/policy.c:859,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:866,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 867
      start: 858
    functionDepth: 1
    functionLinenumber: 858
    functionLinenumberEnd: 867
    functionName: c_list_for_each_entry
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 5
    functionsReached:
    - sd_bus_message_append
    - error_origin
    linkageType: ''
    returnType: void
    signature: void c_list_for_each_entry(i_record, list2, link)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/policy.c:881,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:883,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/policy.c:887,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:900,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/policy.c:906,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:919,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/policy.c:923,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:925,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 4
    argNames:
    - policy
    - list1
    - list2
    - m
    argTypes:
    - Policy*
    - CList*
    - CList*
    - sd_bus_message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 928
      start: 877
    functionDepth: 1
    functionLinenumber: 877
    functionLinenumberEnd: 928
    functionName: policy_export_xmit
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - sd_bus_message_append
    - sd_bus_message_open_container
    - error_origin
    - sd_bus_message_close_container
    linkageType: ''
    returnType: int
    signature: int policy_export_xmit(Policy *policy, CList *list1, CList *list2,
      sd_bus_message *m)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/policy.c:887,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:900,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 886
    functionDepth: 1
    functionLinenumber: 886
    functionLinenumberEnd: 901
    functionName: c_list_for_each_entry
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 5
    functionsReached:
    - sd_bus_message_append
    - error_origin
    linkageType: ''
    returnType: void
    signature: void c_list_for_each_entry(i_record, list1, link)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/policy.c:906,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:919,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 920
      start: 905
    functionDepth: 1
    functionLinenumber: 905
    functionLinenumberEnd: 920
    functionName: c_list_for_each_entry
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 5
    functionsReached:
    - sd_bus_message_append
    - error_origin
    linkageType: ''
    returnType: void
    signature: void c_list_for_each_entry(i_record, list2, link)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/policy.c:947,1
    - Dst: policy_entries_is_empty
      Src: /src/dbus-broker/src/launch/policy.c:952,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/policy.c:955,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:957,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/policy.c:959,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:961,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/policy.c:963,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:965,1
    - Dst: policy_export_connect
      Src: /src/dbus-broker/src/launch/policy.c:967,1
    - Dst: policy_export_own
      Src: /src/dbus-broker/src/launch/policy.c:968,1
    - Dst: policy_export_xmit
      Src: /src/dbus-broker/src/launch/policy.c:969,1
    - Dst: policy_export_xmit
      Src: /src/dbus-broker/src/launch/policy.c:970,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:972,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/policy.c:974,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:976,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/policy.c:978,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:980,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 5
    argNames:
    - policy
    - m
    - entries
    - uid_start
    - n_uid
    argTypes:
    - Policy*
    - sd_bus_message*
    - PolicyEntries*
    - uint32_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 943
    functionDepth: 2
    functionLinenumber: 943
    functionLinenumberEnd: 983
    functionName: policy_export_console
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached:
    - policy_export_xmit
    - policy_export_own
    - sd_bus_message_append
    - sd_bus_message_open_container
    - error_origin
    - policy_export_connect
    - policy_entries_is_empty
    - error_trace
    - sd_bus_message_close_container
    - c_assert
    linkageType: ''
    returnType: int
    signature: int policy_export_console(Policy *policy, sd_bus_message *m, PolicyEntries
      *entries, uint32_t uid_start, uint32_t n_uid)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - _a
    - _b
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 994
      start: 985
    functionDepth: 0
    functionLinenumber: 985
    functionLinenumberEnd: 994
    functionName: policy_uid_compare
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int policy_uid_compare(const void *_a, const void *_b)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/policy.c:1004,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1006,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/policy.c:1008,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1010,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/policy.c:1012,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1014,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/policy.c:1016,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1018,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/policy.c:1020,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1022,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/policy.c:1024,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1026,1
    - Dst: policy_export_connect
      Src: /src/dbus-broker/src/launch/policy.c:1028,1
    - Dst: policy_export_own
      Src: /src/dbus-broker/src/launch/policy.c:1029,1
    - Dst: policy_export_xmit
      Src: /src/dbus-broker/src/launch/policy.c:1030,1
    - Dst: policy_export_xmit
      Src: /src/dbus-broker/src/launch/policy.c:1031,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:1033,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/policy.c:1035,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1037,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/policy.c:1039,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1041,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/launch/policy.c:1043,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/policy.c:1044,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1046,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/policy.c:1048,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1050,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/policy.c:1052,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1054,1
    - Dst: policy_export_connect
      Src: /src/dbus-broker/src/launch/policy.c:1056,1
    - Dst: policy_export_own
      Src: /src/dbus-broker/src/launch/policy.c:1057,1
    - Dst: policy_export_xmit
      Src: /src/dbus-broker/src/launch/policy.c:1058,1
    - Dst: policy_export_xmit
      Src: /src/dbus-broker/src/launch/policy.c:1059,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:1061,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/policy.c:1063,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1065,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/policy.c:1067,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1069,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/policy.c:1072,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1074,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/policy.c:1076,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1078,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/launch/policy.c:1080,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/policy.c:1081,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1083,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/policy.c:1085,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1087,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/policy.c:1089,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1091,1
    - Dst: policy_export_connect
      Src: /src/dbus-broker/src/launch/policy.c:1093,1
    - Dst: policy_export_own
      Src: /src/dbus-broker/src/launch/policy.c:1094,1
    - Dst: policy_export_xmit
      Src: /src/dbus-broker/src/launch/policy.c:1095,1
    - Dst: policy_export_xmit
      Src: /src/dbus-broker/src/launch/policy.c:1096,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:1098,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/policy.c:1100,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1102,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/policy.c:1104,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1106,1
    - Dst: qsort
      Src: /src/dbus-broker/src/launch/policy.c:1113,1
    - Dst: policy_export_console
      Src: /src/dbus-broker/src/launch/policy.c:1119,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:1121,1
    - Dst: policy_export_console
      Src: /src/dbus-broker/src/launch/policy.c:1123,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:1125,1
    - Dst: policy_export_console
      Src: /src/dbus-broker/src/launch/policy.c:1130,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:1132,1
    - Dst: policy_export_console
      Src: /src/dbus-broker/src/launch/policy.c:1135,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/policy.c:1137,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/policy.c:1139,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1141,1
    - Dst: sd_bus_message_open_container
      Src: /src/dbus-broker/src/launch/policy.c:1143,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1145,1
    - Dst: c_list_for_each_entry
      Src: /src/dbus-broker/src/launch/policy.c:1147,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/policy.c:1148,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1152,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/policy.c:1155,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1157,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/policy.c:1159,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1161,1
    - Dst: sd_bus_message_append
      Src: /src/dbus-broker/src/launch/policy.c:1163,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1165,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/policy.c:1167,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1169,1
    - Dst: sd_bus_message_close_container
      Src: /src/dbus-broker/src/launch/policy.c:1171,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/policy.c:1173,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 130
    argCount: 4
    argNames:
    - policy
    - m
    - at_console_uids
    - n_at_console_uids
    argTypes:
    - Policy*
    - sd_bus_message*
    - uint32_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1176
      start: 999
    functionDepth: 3
    functionLinenumber: 999
    functionLinenumberEnd: 1176
    functionName: policy_export
    functionSourceFile: /src/dbus-broker/src/launch/policy.c
    functionUses: 2
    functionsReached:
    - policy_export_xmit
    - c_list_for_each_entry
    - policy_export_own
    - qsort
    - sd_bus_message_append
    - sd_bus_message_open_container
    - error_origin
    - c_rbtree_for_each_entry
    - error_trace
    - sd_bus_message_close_container
    - policy_export_connect
    - policy_export_console
    linkageType: ''
    returnType: int
    signature: int policy_export(Policy *policy, sd_bus_message *m, uint32_t *at_console_uids,
      size_t n_at_console_uids)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _state
    - ','
    - _intro
    - ','
    - _outro
    - ','
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 31
    functionName: CONFIG_ERR
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CONFIG_ERR(_state, _intro, _outro, ...)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/config.c:36,1
    - Dst: strlen
      Src: /src/dbus-broker/src/launch/config.c:40,1
    - Dst: strlen
      Src: /src/dbus-broker/src/launch/config.c:46,1
    - Dst: strlen
      Src: /src/dbus-broker/src/launch/config.c:50,1
    - Dst: strrchr
      Src: /src/dbus-broker/src/launch/config.c:52,1
    - Dst: calloc
      Src: /src/dbus-broker/src/launch/config.c:61,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:63,1
    - Dst: CONFIG_FILE_NULL
      Src: /src/dbus-broker/src/launch/config.c:65,1
    - Dst: config_path_ref
      Src: /src/dbus-broker/src/launch/config.c:66,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/launch/config.c:69,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/launch/config.c:71,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/launch/config.c:73,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 4
    argNames:
    - filep
    - parent
    - prefix
    - path
    argTypes:
    - ConfigPath**
    - ConfigPath*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 79
    functionName: config_path_new
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 0
    functionsReached:
    - c_memcpy
    - strlen
    - calloc
    - config_path_ref
    - error_origin
    - _c_cleanup_
    - strrchr
    - CONFIG_FILE_NULL
    linkageType: ''
    returnType: int
    signature: int config_path_new(ConfigPath **filep, ConfigPath *parent, const char
      *prefix, const char *path)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: config_path_new
      Src: /src/dbus-broker/src/launch/config.c:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - filep
    - parent
    - path
    argTypes:
    - ConfigPath**
    - ConfigPath*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 81
    functionDepth: 2
    functionLinenumber: 81
    functionLinenumberEnd: 89
    functionName: config_path_new_dir
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 0
    functionsReached:
    - config_path_new
    linkageType: ''
    returnType: int
    signature: int config_path_new_dir(ConfigPath **filep, ConfigPath *parent, const
      char *path)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - file
    argTypes:
    - ConfigPath*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 98
    functionName: config_path_ref
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: ConfigPath
    signature: ConfigPath *config_path_ref(ConfigPath *file)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:110,1
    - Dst: config_path_unref
      Src: /src/dbus-broker/src/launch/config.c:112,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - file
    argTypes:
    - ConfigPath*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 113
    functionName: config_path_unref
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 1
    functionsReached:
    - config_path_unref
    - free
    linkageType: ''
    returnType: ConfigPath
    signature: ConfigPath *config_path_unref(ConfigPath *file)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/config.c:119,1
    - Dst: calloc
      Src: /src/dbus-broker/src/launch/config.c:121,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:123,1
    - Dst: CONFIG_NODE_NULL
      Src: /src/dbus-broker/src/launch/config.c:125,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/config.c:138,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:140,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - nodep
    - parent
    - type
    argTypes:
    - ConfigNode**
    - ConfigNode*
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 145
    functionName: config_node_new
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 0
    functionsReached:
    - calloc
    - error_origin
    - _c_cleanup_
    - CONFIG_NODE_NULL
    - strdup
    linkageType: ''
    returnType: int
    signature: int config_node_new(ConfigNode **nodep, ConfigNode *parent, unsigned
      int type)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:156,1
    - Dst: config_path_unref
      Src: /src/dbus-broker/src/launch/config.c:159,1
    - Dst: config_path_unref
      Src: /src/dbus-broker/src/launch/config.c:162,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:165,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:169,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:170,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:171,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:172,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:173,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:174,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:175,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:176,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:177,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:178,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:179,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:180,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:183,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:184,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:188,1
    - Dst: config_path_unref
      Src: /src/dbus-broker/src/launch/config.c:189,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/config.c:191,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/launch/config.c:195,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/launch/config.c:196,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:197,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 45
    argCount: 1
    argNames:
    - node
    argTypes:
    - ConfigNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 150
    functionDepth: 2
    functionLinenumber: 150
    functionLinenumberEnd: 200
    functionName: config_node_free
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 0
    functionsReached:
    - c_assert
    - config_path_unref
    - c_list_unlink
    - free
    linkageType: ''
    returnType: ConfigNode
    signature: ConfigNode *config_node_free(ConfigNode *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/config.c:206,1
    - Dst: calloc
      Src: /src/dbus-broker/src/launch/config.c:208,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:210,1
    - Dst: CONFIG_ROOT_NULL
      Src: /src/dbus-broker/src/launch/config.c:212,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - rootp
    argTypes:
    - ConfigRoot**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 205
    functionDepth: 1
    functionLinenumber: 205
    functionLinenumberEnd: 217
    functionName: config_root_new
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 0
    functionsReached:
    - _c_cleanup_
    - CONFIG_ROOT_NULL
    - error_origin
    - calloc
    linkageType: ''
    returnType: int
    signature: int config_root_new(ConfigRoot **rootp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_list_last_entry
      Src: /src/dbus-broker/src/launch/config.c:228,1
    - Dst: config_node_free
      Src: /src/dbus-broker/src/launch/config.c:229,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/config.c:231,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/launch/config.c:231,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/config.c:232,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/launch/config.c:232,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:234,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - root
    argTypes:
    - ConfigRoot*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 222
    functionDepth: 3
    functionLinenumber: 222
    functionLinenumberEnd: 237
    functionName: config_root_free
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 0
    functionsReached:
    - c_list_last_entry
    - free
    - config_node_free
    - c_list_is_empty
    - c_assert
    linkageType: ''
    returnType: ConfigRoot
    signature: ConfigRoot *config_root_free(ConfigRoot *root)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:246,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:247,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:249,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:252,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:253,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:254,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:256,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:259,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:260,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:261,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:263,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:266,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:268,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 3
    argNames:
    - state
    - node
    - attrs
    argTypes:
    - ConfigState*
    - ConfigNode*
    - XML_Char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 239
    functionDepth: 1
    functionLinenumber: 239
    functionLinenumberEnd: 273
    functionName: config_parser_attrs_include
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 0
    functionsReached:
    - strcmp
    - CONFIG_ERR
    linkageType: ''
    returnType: int
    signature: int config_parser_attrs_include(ConfigState *state, ConfigNode *node,
      const XML_Char **attrs)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:283,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:285,1
    - Dst: nss_cache_get_uid
      Src: /src/dbus-broker/src/launch/config.c:287,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:290,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/config.c:293,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:298,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:300,1
    - Dst: nss_cache_get_gid
      Src: /src/dbus-broker/src/launch/config.c:302,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:305,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/config.c:308,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:313,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:315,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:317,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:319,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:322,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:323,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:325,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:327,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:329,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:332,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:334,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:339,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 56
    argCount: 3
    argNames:
    - state
    - node
    - attrs
    argTypes:
    - ConfigState*
    - ConfigNode*
    - XML_Char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 275
    functionDepth: 1
    functionLinenumber: 275
    functionLinenumberEnd: 342
    functionName: config_parser_attrs_policy
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 0
    functionsReached:
    - nss_cache_get_uid
    - CONFIG_ERR
    - error_fold
    - strcmp
    - nss_cache_get_gid
    linkageType: ''
    returnType: int
    signature: int config_parser_attrs_policy(ConfigState *state, ConfigNode *node,
      const XML_Char **attrs)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:351,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:352,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:354,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:356,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:358,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:360,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:362,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:364,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:366,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:368,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:370,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:372,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:374,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:376,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:378,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:380,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:382,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:384,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:386,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:388,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:390,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:392,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:395,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:397,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:402,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 55
    argCount: 3
    argNames:
    - state
    - node
    - attrs
    argTypes:
    - ConfigState*
    - ConfigNode*
    - XML_Char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 344
    functionDepth: 1
    functionLinenumber: 344
    functionLinenumberEnd: 405
    functionName: config_parser_attrs_limit
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 0
    functionsReached:
    - strcmp
    - CONFIG_ERR
    linkageType: ''
    returnType: int
    signature: int config_parser_attrs_limit(ConfigState *state, ConfigNode *node,
      const XML_Char **attrs)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:414,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:415,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:417,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:419,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:422,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:424,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - state
    - node
    - attrs
    argTypes:
    - ConfigState*
    - ConfigNode*
    - XML_Char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 407
    functionDepth: 1
    functionLinenumber: 407
    functionLinenumberEnd: 429
    functionName: config_parser_attrs_apparmor
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 0
    functionsReached:
    - strcmp
    - CONFIG_ERR
    linkageType: ''
    returnType: int
    signature: int config_parser_attrs_apparmor(ConfigState *state, ConfigNode *node,
      const XML_Char **attrs)
  - BBCount: 62
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:440,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/config.c:441,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:443,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:445,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:447,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/config.c:448,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:450,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:452,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:454,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/config.c:455,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:457,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:459,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:461,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/config.c:462,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:464,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:466,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:468,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/config.c:469,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:471,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:473,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:475,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:476,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:478,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:480,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:482,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:485,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:486,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:487,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:489,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:492,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:493,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/config.c:494,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:496,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:498,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:500,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/config.c:501,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:503,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:505,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:507,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/config.c:508,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:510,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:512,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:514,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/config.c:515,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:517,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:519,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:521,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/config.c:522,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:524,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:526,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:528,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:529,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:531,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:533,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:535,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:538,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:539,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/config.c:540,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:542,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:544,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:546,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/config.c:547,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:549,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:551,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:553,1
    - Dst: util_strtou64
      Src: /src/dbus-broker/src/launch/config.c:554,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:556,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:557,1
    - Dst: util_strtou64
      Src: /src/dbus-broker/src/launch/config.c:558,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:560,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:561,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:562,1
    - Dst: nss_cache_get_uid
      Src: /src/dbus-broker/src/launch/config.c:566,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:569,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/config.c:573,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:578,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:579,1
    - Dst: nss_cache_get_gid
      Src: /src/dbus-broker/src/launch/config.c:583,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:586,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/config.c:590,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:595,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:596,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:598,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:601,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:602,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:603,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:605,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:608,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:609,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:610,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:612,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:615,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:616,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:617,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:619,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:622,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:624,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 191
    argCount: 3
    argNames:
    - state
    - node
    - attrs
    argTypes:
    - ConfigState*
    - ConfigNode*
    - XML_Char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 431
    functionDepth: 1
    functionLinenumber: 431
    functionLinenumberEnd: 629
    functionName: config_parser_attrs_allow_deny
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 0
    functionsReached:
    - CONFIG_ERR
    - util_strtou64
    - nss_cache_get_uid
    - error_origin
    - nss_cache_get_gid
    - free
    - strdup
    - strcmp
    - error_fold
    linkageType: ''
    returnType: int
    signature: int config_parser_attrs_allow_deny(ConfigState *state, ConfigNode *node,
      const XML_Char **attrs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:639,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/config.c:640,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:642,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:644,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:646,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/config.c:647,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:649,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:651,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:654,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:659,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:661,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 3
    argNames:
    - state
    - node
    - attrs
    argTypes:
    - ConfigState*
    - ConfigNode*
    - XML_Char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 631
    functionDepth: 1
    functionLinenumber: 631
    functionLinenumberEnd: 664
    functionName: config_parser_attrs_associate
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 0
    functionsReached:
    - CONFIG_ERR
    - error_origin
    - free
    - strdup
    - strcmp
    linkageType: ''
    returnType: int
    signature: int config_parser_attrs_associate(ConfigState *state, ConfigNode *node,
      const XML_Char **attrs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:673,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - state
    - node
    - attrs
    argTypes:
    - ConfigState*
    - ConfigNode*
    - XML_Char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 677
      start: 666
    functionDepth: 1
    functionLinenumber: 666
    functionLinenumberEnd: 677
    functionName: config_parser_attrs_default
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 0
    functionsReached:
    - CONFIG_ERR
    linkageType: ''
    returnType: int
    signature: int config_parser_attrs_default(ConfigState *state, ConfigNode *node,
      const XML_Char **attrs)
  - BBCount: 92
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/config.c:680,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/config.c:684,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:699,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:704,1
    - Dst: config_parser_attrs_default
      Src: /src/dbus-broker/src/launch/config.c:708,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:712,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:717,1
    - Dst: config_parser_attrs_default
      Src: /src/dbus-broker/src/launch/config.c:721,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:725,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:730,1
    - Dst: config_parser_attrs_default
      Src: /src/dbus-broker/src/launch/config.c:734,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:738,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:743,1
    - Dst: config_parser_attrs_default
      Src: /src/dbus-broker/src/launch/config.c:747,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:751,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:756,1
    - Dst: config_parser_attrs_default
      Src: /src/dbus-broker/src/launch/config.c:760,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:764,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:769,1
    - Dst: config_parser_attrs_default
      Src: /src/dbus-broker/src/launch/config.c:773,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:777,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:782,1
    - Dst: config_parser_attrs_default
      Src: /src/dbus-broker/src/launch/config.c:786,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:790,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:795,1
    - Dst: config_parser_attrs_default
      Src: /src/dbus-broker/src/launch/config.c:799,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:803,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:808,1
    - Dst: config_parser_attrs_default
      Src: /src/dbus-broker/src/launch/config.c:812,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:816,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:821,1
    - Dst: config_parser_attrs_default
      Src: /src/dbus-broker/src/launch/config.c:825,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:829,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:834,1
    - Dst: config_parser_attrs_default
      Src: /src/dbus-broker/src/launch/config.c:838,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:842,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:847,1
    - Dst: config_parser_attrs_default
      Src: /src/dbus-broker/src/launch/config.c:851,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:855,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:860,1
    - Dst: config_parser_attrs_default
      Src: /src/dbus-broker/src/launch/config.c:864,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:868,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:873,1
    - Dst: config_parser_attrs_default
      Src: /src/dbus-broker/src/launch/config.c:877,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:881,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:886,1
    - Dst: config_parser_attrs_include
      Src: /src/dbus-broker/src/launch/config.c:890,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:894,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:899,1
    - Dst: config_parser_attrs_policy
      Src: /src/dbus-broker/src/launch/config.c:903,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:907,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:912,1
    - Dst: config_parser_attrs_limit
      Src: /src/dbus-broker/src/launch/config.c:916,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:920,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:925,1
    - Dst: config_parser_attrs_default
      Src: /src/dbus-broker/src/launch/config.c:929,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:933,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:938,1
    - Dst: config_parser_attrs_apparmor
      Src: /src/dbus-broker/src/launch/config.c:942,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:946,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:951,1
    - Dst: config_parser_attrs_allow_deny
      Src: /src/dbus-broker/src/launch/config.c:955,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:959,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:964,1
    - Dst: config_parser_attrs_allow_deny
      Src: /src/dbus-broker/src/launch/config.c:968,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:972,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:977,1
    - Dst: config_parser_attrs_associate
      Src: /src/dbus-broker/src/launch/config.c:981,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:986,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/config.c:990,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/config.c:991,1
    - Dst: c_list_link_after
      Src: /src/dbus-broker/src/launch/config.c:993,1
    - Dst: config_path_ref
      Src: /src/dbus-broker/src/launch/config.c:998,1
    - Dst: XML_GetCurrentLineNumber
      Src: /src/dbus-broker/src/launch/config.c:1000,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/launch/config.c:1000,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/config.c:1007,1
    CyclomaticComplexity: 158
    EdgeCount: 158
    ICount: 315
    argCount: 3
    argNames:
    - userdata
    - name
    - attrs
    argTypes:
    - void*
    - XML_Char*
    - XML_Char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1010
      start: 679
    functionDepth: 2
    functionLinenumber: 679
    functionLinenumberEnd: 1010
    functionName: config_parser_begin_fn
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 0
    functionsReached:
    - CONFIG_ERR
    - config_parser_attrs_default
    - config_parser_attrs_include
    - config_parser_attrs_apparmor
    - XML_GetCurrentLineNumber
    - config_path_ref
    - config_node_new
    - config_parser_attrs_policy
    - c_list_link_after
    - _c_cleanup_
    - config_parser_attrs_limit
    - config_parser_attrs_allow_deny
    - c_container_of
    - error_trace
    - c_assert
    - strcmp
    - config_parser_attrs_associate
    linkageType: ''
    returnType: void
    signature: void config_parser_begin_fn(void *userdata, const XML_Char *name, const
      XML_Char **attrs)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/config.c:1033,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:1035,1
    - Dst: nss_cache_get_uid
      Src: /src/dbus-broker/src/launch/config.c:1043,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:1049,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/config.c:1053,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/config.c:1062,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/config.c:1063,1
    - Dst: config_path_new_dir
      Src: /src/dbus-broker/src/launch/config.c:1068,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/config.c:1072,1
    - Dst: opendir
      Src: /src/dbus-broker/src/launch/config.c:1076,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:1082,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:1086,1
    - Dst: dirwatch_add
      Src: /src/dbus-broker/src/launch/config.c:1090,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/config.c:1092,1
    - Dst: fs_dir_list
      Src: /src/dbus-broker/src/launch/config.c:1096,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/config.c:1098,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/config.c:1103,1
    - Dst: strlen
      Src: /src/dbus-broker/src/launch/config.c:1106,1
    - Dst: strlen
      Src: /src/dbus-broker/src/launch/config.c:1108,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:1110,1
    - Dst: strlen
      Src: /src/dbus-broker/src/launch/config.c:1110,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:1113,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/config.c:1115,1
    - Dst: config_path_new
      Src: /src/dbus-broker/src/launch/config.c:1119,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/config.c:1124,1
    - Dst: c_list_link_after
      Src: /src/dbus-broker/src/launch/config.c:1128,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/config.c:1129,1
    - Dst: config_path_new
      Src: /src/dbus-broker/src/launch/config.c:1138,1
    - Dst: bus_selinux_policy_root
      Src: /src/dbus-broker/src/launch/config.c:1141,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/config.c:1145,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/launch/config.c:1149,1
    - Dst: strdup
      Src: /src/dbus-broker/src/launch/config.c:1154,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:1156,1
    - Dst: util_strtou64
      Src: /src/dbus-broker/src/launch/config.c:1164,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:1166,1
    - Dst: strspn
      Src: /src/dbus-broker/src/launch/config.c:1192,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:1193,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/config.c:1203,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/config.c:1204,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/config.c:1205,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 131
    argCount: 2
    argNames:
    - userdata
    - name
    argTypes:
    - void*
    - XML_Char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1209
      start: 1012
    functionDepth: 3
    functionLinenumber: 1012
    functionLinenumberEnd: 1209
    functionName: config_parser_end_fn
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 0
    functionsReached:
    - nss_cache_get_uid
    - CONFIG_ERR
    - error_origin
    - dirwatch_add
    - strspn
    - config_path_new_dir
    - bus_selinux_policy_root
    - c_list_link_after
    - _c_cleanup_
    - strdup
    - util_strtou64
    - strlen
    - config_node_new
    - error_trace
    - c_assert
    - opendir
    - config_path_new
    - c_list_link_tail
    - fs_dir_list
    - strcmp
    - error_fold
    linkageType: ''
    returnType: void
    signature: void config_parser_end_fn(void *userdata, const XML_Char *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/dbus-broker/src/launch/config.c:1220,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:1222,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/launch/config.c:1226,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/launch/config.c:1227,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/config.c:1229,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - userdata
    - data
    - n_data
    argTypes:
    - void*
    - XML_Char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1232
      start: 1211
    functionDepth: 1
    functionLinenumber: 1211
    functionLinenumberEnd: 1232
    functionName: config_parser_blob_fn
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 0
    functionsReached:
    - c_memcpy
    - malloc
    - error_origin
    - free
    linkageType: ''
    returnType: void
    signature: void config_parser_blob_fn(void *userdata, const XML_Char *data, int
      n_data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CONFIG_PARSER_NULL
      Src: /src/dbus-broker/src/launch/config.c:1240,1
    - Dst: XML_ParserCreate
      Src: /src/dbus-broker/src/launch/config.c:1242,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/config.c:1243,1
    - Dst: getauxval
      Src: /src/dbus-broker/src/launch/config.c:1254,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/config.c:1255,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/launch/config.c:1256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ConfigParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1257
      start: 1237
    functionDepth: 1
    functionLinenumber: 1237
    functionLinenumberEnd: 1257
    functionName: config_parser_init
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 3
    functionsReached:
    - c_memcpy
    - getauxval
    - CONFIG_PARSER_NULL
    - c_assert
    - XML_ParserCreate
    linkageType: ''
    returnType: void
    signature: void config_parser_init(ConfigParser *parser)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XML_ParserFree
      Src: /src/dbus-broker/src/launch/config.c:1264,1
    - Dst: CONFIG_PARSER_NULL
      Src: /src/dbus-broker/src/launch/config.c:1266,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ConfigParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1267
      start: 1262
    functionDepth: 1
    functionLinenumber: 1262
    functionLinenumberEnd: 1267
    functionName: config_parser_deinit
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 1
    functionsReached:
    - CONFIG_PARSER_NULL
    - XML_ParserFree
    linkageType: ''
    returnType: void
    signature: void config_parser_deinit(ConfigParser *parser)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/config.c:1270,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/config.c:1276,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/config.c:1277,1
    - Dst: c_memset
      Src: /src/dbus-broker/src/launch/config.c:1279,1
    - Dst: bus_selinux_is_enabled
      Src: /src/dbus-broker/src/launch/config.c:1288,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/config.c:1293,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:1294,1
    - Dst: XML_ParserReset
      Src: /src/dbus-broker/src/launch/config.c:1299,1
    - Dst: XML_SetHashSalt
      Src: /src/dbus-broker/src/launch/config.c:1300,1
    - Dst: XML_SetUserData
      Src: /src/dbus-broker/src/launch/config.c:1301,1
    - Dst: XML_SetElementHandler
      Src: /src/dbus-broker/src/launch/config.c:1302,1
    - Dst: XML_SetCharacterDataHandler
      Src: /src/dbus-broker/src/launch/config.c:1303,1
    - Dst: open
      Src: /src/dbus-broker/src/launch/config.c:1305,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:1311,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:1315,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:1320,1
    - Dst: read
      Src: /src/dbus-broker/src/launch/config.c:1325,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/config.c:1327,1
    - Dst: XML_Parse
      Src: /src/dbus-broker/src/launch/config.c:1329,1
    - Dst: CONFIG_ERR
      Src: /src/dbus-broker/src/launch/config.c:1331,1
    - Dst: XML_ErrorString
      Src: /src/dbus-broker/src/launch/config.c:1332,1
    - Dst: XML_GetErrorCode
      Src: /src/dbus-broker/src/launch/config.c:1332,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/config.c:1337,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/config.c:1340,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/config.c:1341,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 54
    argCount: 5
    argNames:
    - parser
    - root
    - node
    - nss_cache
    - dirwatch
    argTypes:
    - ConfigParser*
    - ConfigRoot*
    - ConfigNode*
    - NSSCache*
    - Dirwatch*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1344
      start: 1269
    functionDepth: 1
    functionLinenumber: 1269
    functionLinenumberEnd: 1344
    functionName: config_parser_include
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 0
    functionsReached:
    - XML_ParserReset
    - XML_SetHashSalt
    - CONFIG_ERR
    - XML_SetUserData
    - XML_Parse
    - XML_ErrorString
    - XML_GetErrorCode
    - bus_selinux_is_enabled
    - error_origin
    - read
    - _c_cleanup_
    - c_memset
    - XML_SetCharacterDataHandler
    - error_trace
    - XML_SetElementHandler
    - c_assert
    - strcmp
    - open
    linkageType: ''
    returnType: int
    signature: int config_parser_include(ConfigParser *parser, ConfigRoot *root, ConfigNode
      *node, NSSCache *nss_cache, Dirwatch *dirwatch)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/config.c:1350,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/config.c:1351,1
    - Dst: config_root_new
      Src: /src/dbus-broker/src/launch/config.c:1359,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/config.c:1361,1
    - Dst: config_path_new
      Src: /src/dbus-broker/src/launch/config.c:1367,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/config.c:1369,1
    - Dst: config_node_new
      Src: /src/dbus-broker/src/launch/config.c:1371,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/config.c:1373,1
    - Dst: config_path_ref
      Src: /src/dbus-broker/src/launch/config.c:1375,1
    - Dst: c_list_link_front
      Src: /src/dbus-broker/src/launch/config.c:1376,1
    - Dst: c_list_link_front
      Src: /src/dbus-broker/src/launch/config.c:1377,1
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/launch/config.c:1384,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/launch/config.c:1385,1
    - Dst: config_parser_include
      Src: /src/dbus-broker/src/launch/config.c:1387,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/config.c:1389,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 5
    argNames:
    - parser
    - rootp
    - path
    - nss_cache
    - dirwatch
    argTypes:
    - ConfigParser*
    - ConfigRoot**
    - char*
    - NSSCache*
    - Dirwatch*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1395
      start: 1349
    functionDepth: 2
    functionLinenumber: 1349
    functionLinenumberEnd: 1395
    functionName: config_parser_read
    functionSourceFile: /src/dbus-broker/src/launch/config.c
    functionUses: 2
    functionsReached:
    - config_root_new
    - config_path_new
    - c_list_first_entry
    - config_path_ref
    - config_node_new
    - c_list_unlink
    - _c_cleanup_
    - config_parser_include
    - error_trace
    - c_list_link_front
    linkageType: ''
    returnType: int
    signature: int config_parser_read(ConfigParser *parser, ConfigRoot **rootp, const
      char *path, NSSCache *nss_cache, Dirwatch *dirwatch)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/dbus-broker/src/launch/nss-cache.c:46,1
    - Dst: malloc
      Src: /src/dbus-broker/src/launch/nss-cache.c:48,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/nss-cache.c:50,1
    - Dst: C_RBNODE_INIT
      Src: /src/dbus-broker/src/launch/nss-cache.c:53,1
    - Dst: C_RBNODE_INIT
      Src: /src/dbus-broker/src/launch/nss-cache.c:54,1
    - Dst: memcpy
      Src: /src/dbus-broker/src/launch/nss-cache.c:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - nodep
    - name
    - id
    argTypes:
    - NSSCacheNode**
    - char*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 59
    functionName: nss_cache_node_new
    functionSourceFile: /src/dbus-broker/src/launch/nss-cache.c
    functionUses: 0
    functionsReached:
    - strlen
    - C_RBNODE_INIT
    - error_origin
    - memcpy
    - malloc
    linkageType: ''
    returnType: int
    signature: int nss_cache_node_new(NSSCacheNode **nodep, const char *name, uint32_t
      id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/launch/nss-cache.c:62,1
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/launch/nss-cache.c:63,1
    - Dst: free
      Src: /src/dbus-broker/src/launch/nss-cache.c:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - NSSCacheNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 68
    functionName: nss_cache_node_free
    functionSourceFile: /src/dbus-broker/src/launch/nss-cache.c
    functionUses: 0
    functionsReached:
    - c_rbnode_unlink
    - free
    linkageType: ''
    returnType: NSSCacheNode
    signature: NSSCacheNode *nss_cache_node_free(NSSCacheNode *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - cache
    argTypes:
    - NSSCache*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: nss_cache_init
    functionSourceFile: /src/dbus-broker/src/launch/nss-cache.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void nss_cache_init(NSSCache *cache)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_for_each_entry_safe_postorder_unlink
      Src: /src/dbus-broker/src/launch/nss-cache.c:77,1
    - Dst: nss_cache_node_free
      Src: /src/dbus-broker/src/launch/nss-cache.c:81,1
    - Dst: c_rbtree_for_each_entry_safe_postorder_unlink
      Src: /src/dbus-broker/src/launch/nss-cache.c:83,1
    - Dst: nss_cache_node_free
      Src: /src/dbus-broker/src/launch/nss-cache.c:87,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/nss-cache.c:89,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/launch/nss-cache.c:89,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/nss-cache.c:90,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/launch/nss-cache.c:90,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/nss-cache.c:91,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/launch/nss-cache.c:91,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/launch/nss-cache.c:92,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/launch/nss-cache.c:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - cache
    argTypes:
    - NSSCache*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 93
    functionName: nss_cache_deinit
    functionSourceFile: /src/dbus-broker/src/launch/nss-cache.c
    functionUses: 0
    functionsReached:
    - c_assert
    - c_rbtree_is_empty
    - c_rbtree_for_each_entry_safe_postorder_unlink
    - nss_cache_node_free
    linkageType: ''
    returnType: void
    signature: void nss_cache_deinit(NSSCache *cache)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbnode_entry
      Src: /src/dbus-broker/src/launch/nss-cache.c:96,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/launch/nss-cache.c:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - k
    - rb
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 100
    functionName: nss_cache_node_compare_name
    functionSourceFile: /src/dbus-broker/src/launch/nss-cache.c
    functionUses: 0
    functionsReached:
    - strcmp
    - c_rbnode_entry
    linkageType: ''
    returnType: int
    signature: int nss_cache_node_compare_name(CRBTree *t, void *k, CRBNode *rb)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_rbnode_entry
      Src: /src/dbus-broker/src/launch/nss-cache.c:103,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - t
    - k
    - rb
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 112
    functionName: nss_cache_node_compare_id
    functionSourceFile: /src/dbus-broker/src/launch/nss-cache.c
    functionUses: 0
    functionsReached:
    - c_rbnode_entry
    linkageType: ''
    returnType: int
    signature: int nss_cache_node_compare_id(CRBTree *t, void *k, CRBNode *rb)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/nss-cache.c:127,1
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/launch/nss-cache.c:133,1
    - Dst: c_rbnode_entry
      Src: /src/dbus-broker/src/launch/nss-cache.c:139,1
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/launch/nss-cache.c:148,1
    - Dst: c_rbnode_entry
      Src: /src/dbus-broker/src/launch/nss-cache.c:153,1
    - Dst: c_rbnode_is_linked
      Src: /src/dbus-broker/src/launch/nss-cache.c:160,1
    - Dst: c_rbnode_is_linked
      Src: /src/dbus-broker/src/launch/nss-cache.c:161,1
    - Dst: nss_cache_node_new
      Src: /src/dbus-broker/src/launch/nss-cache.c:182,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/nss-cache.c:184,1
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/launch/nss-cache.c:187,1
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/launch/nss-cache.c:192,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 32
    argCount: 5
    argNames:
    - tree_by_name
    - tree_by_id
    - nodep
    - name
    - id
    argTypes:
    - CRBTree*
    - CRBTree*
    - NSSCacheNode**
    - char*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 114
    functionDepth: 2
    functionLinenumber: 114
    functionLinenumberEnd: 201
    functionName: nss_cache_add
    functionSourceFile: /src/dbus-broker/src/launch/nss-cache.c
    functionUses: 0
    functionsReached:
    - c_rbtree_find_slot
    - error_origin
    - c_rbtree_add
    - error_trace
    - c_rbnode_entry
    - c_rbnode_is_linked
    - nss_cache_node_new
    linkageType: ''
    returnType: int
    signature: "int nss_cache_add(CRBTree *tree_by_name,\n                         CRBTree
      *tree_by_id,\n                         NSSCacheNode **nodep,\n                         const
      char *name,\n                         uint32_t id)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: nss_cache_add
      Src: /src/dbus-broker/src/launch/nss-cache.c:207,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/nss-cache.c:213,1
    - Dst: c_memset
      Src: /src/dbus-broker/src/launch/nss-cache.c:216,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - cache
    - pw
    argTypes:
    - NSSCache*
    - struct passwd*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 203
    functionDepth: 3
    functionLinenumber: 203
    functionLinenumberEnd: 223
    functionName: nss_cache_add_user
    functionSourceFile: /src/dbus-broker/src/launch/nss-cache.c
    functionUses: 0
    functionsReached:
    - c_memset
    - error_trace
    - nss_cache_add
    linkageType: ''
    returnType: int
    signature: int nss_cache_add_user(NSSCache *cache, struct passwd *pw)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: nss_cache_add
      Src: /src/dbus-broker/src/launch/nss-cache.c:229,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/nss-cache.c:235,1
    - Dst: c_memset
      Src: /src/dbus-broker/src/launch/nss-cache.c:238,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - cache
    - gr
    argTypes:
    - NSSCache*
    - struct group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 225
    functionDepth: 3
    functionLinenumber: 225
    functionLinenumberEnd: 244
    functionName: nss_cache_add_group
    functionSourceFile: /src/dbus-broker/src/launch/nss-cache.c
    functionUses: 0
    functionsReached:
    - c_memset
    - error_trace
    - nss_cache_add
    linkageType: ''
    returnType: int
    signature: int nss_cache_add_group(NSSCache *cache, struct group *gr)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/nss-cache.c:247,1
    - Dst: fopen
      Src: /src/dbus-broker/src/launch/nss-cache.c:251,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/nss-cache.c:256,1
    - Dst: fgetpwent
      Src: /src/dbus-broker/src/launch/nss-cache.c:259,1
    - Dst: nss_cache_add_user
      Src: /src/dbus-broker/src/launch/nss-cache.c:260,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/nss-cache.c:262,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - cache
    argTypes:
    - NSSCache*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 246
    functionDepth: 4
    functionLinenumber: 246
    functionLinenumberEnd: 266
    functionName: nss_cache_populate_users
    functionSourceFile: /src/dbus-broker/src/launch/nss-cache.c
    functionUses: 0
    functionsReached:
    - fgetpwent
    - error_origin
    - _c_cleanup_
    - fopen
    - error_trace
    - nss_cache_add_user
    linkageType: ''
    returnType: int
    signature: int nss_cache_populate_users(NSSCache *cache)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/nss-cache.c:269,1
    - Dst: fopen
      Src: /src/dbus-broker/src/launch/nss-cache.c:273,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/nss-cache.c:278,1
    - Dst: fgetgrent
      Src: /src/dbus-broker/src/launch/nss-cache.c:281,1
    - Dst: nss_cache_add_group
      Src: /src/dbus-broker/src/launch/nss-cache.c:282,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/nss-cache.c:284,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - cache
    argTypes:
    - NSSCache*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 268
    functionDepth: 4
    functionLinenumber: 268
    functionLinenumberEnd: 288
    functionName: nss_cache_populate_groups
    functionSourceFile: /src/dbus-broker/src/launch/nss-cache.c
    functionUses: 0
    functionsReached:
    - fgetgrent
    - error_origin
    - _c_cleanup_
    - fopen
    - error_trace
    - nss_cache_add_group
    linkageType: ''
    returnType: int
    signature: int nss_cache_populate_groups(NSSCache *cache)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: nss_cache_add_user
      Src: /src/dbus-broker/src/launch/nss-cache.c:293,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/nss-cache.c:300,1
    - Dst: nss_cache_add_group
      Src: /src/dbus-broker/src/launch/nss-cache.c:302,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/nss-cache.c:308,1
    - Dst: nss_cache_populate_users
      Src: /src/dbus-broker/src/launch/nss-cache.c:310,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/nss-cache.c:312,1
    - Dst: nss_cache_populate_groups
      Src: /src/dbus-broker/src/launch/nss-cache.c:314,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/launch/nss-cache.c:316,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - cache
    argTypes:
    - NSSCache*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 290
    functionDepth: 5
    functionLinenumber: 290
    functionLinenumberEnd: 319
    functionName: nss_cache_populate
    functionSourceFile: /src/dbus-broker/src/launch/nss-cache.c
    functionUses: 2
    functionsReached:
    - error_trace
    - nss_cache_add_user
    - nss_cache_populate_groups
    - nss_cache_populate_users
    - nss_cache_add_group
    linkageType: ''
    returnType: int
    signature: int nss_cache_populate(NSSCache *cache)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/dbus-broker/src/launch/nss-cache.c:333,1
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/launch/nss-cache.c:342,1
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/launch/nss-cache.c:348,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/nss-cache.c:361,1
    - Dst: getpwuid
      Src: /src/dbus-broker/src/launch/nss-cache.c:364,1
    - Dst: getpwnam
      Src: /src/dbus-broker/src/launch/nss-cache.c:366,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/nss-cache.c:369,1
    - Dst: nss_cache_add_user
      Src: /src/dbus-broker/src/launch/nss-cache.c:372,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/nss-cache.c:376,1
    - Dst: nss_cache_add_user
      Src: /src/dbus-broker/src/launch/nss-cache.c:380,1
    - Dst: nss_cache_add_user
      Src: /src/dbus-broker/src/launch/nss-cache.c:389,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 43
    argCount: 4
    argNames:
    - cache
    - uidp
    - gidp
    - name
    argTypes:
    - NSSCache*
    - uint32_t*
    - uint32_t*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 321
    functionDepth: 4
    functionLinenumber: 321
    functionLinenumberEnd: 408
    functionName: nss_cache_get_uid
    functionSourceFile: /src/dbus-broker/src/launch/nss-cache.c
    functionUses: 5
    functionsReached:
    - getpwnam
    - getpwuid
    - strtoull
    - nss_cache_add_user
    - c_rbtree_find_entry
    - fprintf
    linkageType: ''
    returnType: int
    signature: int nss_cache_get_uid(NSSCache *cache, uint32_t *uidp, uint32_t *gidp,
      const char *name)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/dbus-broker/src/launch/nss-cache.c:422,1
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/launch/nss-cache.c:431,1
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/launch/nss-cache.c:437,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/nss-cache.c:450,1
    - Dst: getgrgid
      Src: /src/dbus-broker/src/launch/nss-cache.c:453,1
    - Dst: getgrnam
      Src: /src/dbus-broker/src/launch/nss-cache.c:455,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/nss-cache.c:458,1
    - Dst: nss_cache_add_group
      Src: /src/dbus-broker/src/launch/nss-cache.c:461,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/launch/nss-cache.c:465,1
    - Dst: nss_cache_add_group
      Src: /src/dbus-broker/src/launch/nss-cache.c:469,1
    - Dst: nss_cache_add_group
      Src: /src/dbus-broker/src/launch/nss-cache.c:477,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 40
    argCount: 3
    argNames:
    - cache
    - gidp
    - name
    argTypes:
    - NSSCache*
    - uint32_t*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 410
    functionDepth: 4
    functionLinenumber: 410
    functionLinenumberEnd: 492
    functionName: nss_cache_get_gid
    functionSourceFile: /src/dbus-broker/src/launch/nss-cache.c
    functionUses: 3
    functionsReached:
    - getgrnam
    - strtoull
    - getgrgid
    - c_rbtree_find_entry
    - fprintf
    - nss_cache_add_group
    linkageType: ''
    returnType: int
    signature: int nss_cache_get_gid(NSSCache *cache, uint32_t *gidp, const char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/launch/nss-cache.c:501,1
    - Dst: calloc
      Src: /src/dbus-broker/src/launch/nss-cache.c:512,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/launch/nss-cache.c:514,1
    - Dst: nss_cache_get_uid
      Src: /src/dbus-broker/src/launch/nss-cache.c:517,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/launch/nss-cache.c:522,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 5
    argNames:
    - nss_cache
    - uidsp
    - n_uidsp
    - usernames
    - n_usernames
    argTypes:
    - NSSCache*
    - uint32_t**
    - size_t*
    - char**
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 494
    functionDepth: 5
    functionLinenumber: 494
    functionLinenumberEnd: 532
    functionName: nss_cache_resolve_names
    functionSourceFile: /src/dbus-broker/src/launch/nss-cache.c
    functionUses: 0
    functionsReached:
    - nss_cache_get_uid
    - calloc
    - error_origin
    - _c_cleanup_
    - error_fold
    linkageType: ''
    returnType: int
    signature: "int nss_cache_resolve_names(\n        NSSCache *nss_cache,\n        uint32_t
      **uidsp,\n        size_t *n_uidsp,\n        const char * const *usernames,\n
      \       size_t n_usernames\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/launch/nss-cache.c:536,1
    - Dst: nss_cache_resolve_names
      Src: /src/dbus-broker/src/launch/nss-cache.c:542,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - nss_cache
    - uidsp
    - n_uidsp
    argTypes:
    - NSSCache*
    - uint32_t**
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 534
    functionDepth: 6
    functionLinenumber: 534
    functionLinenumberEnd: 543
    functionName: nss_cache_resolve_system_console_users
    functionSourceFile: /src/dbus-broker/src/launch/nss-cache.c
    functionUses: 2
    functionsReached:
    - C_ARRAY_SIZE
    - nss_cache_resolve_names
    linkageType: ''
    returnType: int
    signature: int nss_cache_resolve_system_console_users(NSSCache *nss_cache, uint32_t
      **uidsp, size_t *n_uidsp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/connection.c:21,1
    - Dst: CONNECTION_NULL
      Src: /src/dbus-broker/src/dbus/connection.c:24,1
    - Dst: socket_init
      Src: /src/dbus-broker/src/dbus/connection.c:25,1
    - Dst: dispatch_file_init
      Src: /src/dbus-broker/src/dbus/connection.c:27,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/connection.c:34,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - c
    - dispatch_ctx
    - dispatch_fn
    - user
    - fd
    argTypes:
    - Connection*
    - DispatchContext*
    - DispatchFn
    - User*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 16
    functionDepth: 1
    functionLinenumber: 16
    functionLinenumberEnd: 38
    functionName: connection_init
    functionSourceFile: /src/dbus-broker/src/dbus/connection.c
    functionUses: 0
    functionsReached:
    - CONNECTION_NULL
    - socket_init
    - dispatch_file_init
    - _c_cleanup_
    - error_fold
    linkageType: ''
    returnType: int
    signature: "int connection_init(Connection *c,\n                           DispatchContext
      *dispatch_ctx,\n                           DispatchFn dispatch_fn,\n                           User
      *user,\n                           int fd)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: connection_init
      Src: /src/dbus-broker/src/dbus/connection.c:51,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/dbus/connection.c:57,1
    - Dst: sasl_server_init
      Src: /src/dbus-broker/src/dbus/connection.c:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 6
    argNames:
    - c
    - dispatch_ctx
    - dispatch_fn
    - user
    - guid
    - fd
    argTypes:
    - Connection*
    - DispatchContext*
    - DispatchFn
    - User*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 62
    functionName: connection_init_server
    functionSourceFile: /src/dbus-broker/src/dbus/connection.c
    functionUses: 0
    functionsReached:
    - sasl_server_init
    - connection_init
    - error_trace
    linkageType: ''
    returnType: int
    signature: "int connection_init_server(Connection *c,\n                           DispatchContext
      *dispatch_ctx,\n                           DispatchFn dispatch_fn,\n                           User
      *user,\n                           const char *guid,\n                           int
      fd)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: connection_init
      Src: /src/dbus-broker/src/dbus/connection.c:74,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/dbus/connection.c:80,1
    - Dst: sasl_client_init
      Src: /src/dbus-broker/src/dbus/connection.c:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - c
    - dispatch_ctx
    - dispatch_fn
    - user
    - fd
    argTypes:
    - Connection*
    - DispatchContext*
    - DispatchFn
    - User*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 67
    functionDepth: 2
    functionLinenumber: 67
    functionLinenumberEnd: 85
    functionName: connection_init_client
    functionSourceFile: /src/dbus-broker/src/dbus/connection.c
    functionUses: 1
    functionsReached:
    - sasl_client_init
    - connection_init
    - error_trace
    linkageType: ''
    returnType: int
    signature: "int connection_init_client(Connection *c,\n                           DispatchContext
      *dispatch_ctx,\n                           DispatchFn dispatch_fn,\n                           User
      *user,\n                           int fd)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sasl_client_deinit
      Src: /src/dbus-broker/src/dbus/connection.c:91,1
    - Dst: sasl_server_deinit
      Src: /src/dbus-broker/src/dbus/connection.c:92,1
    - Dst: dispatch_file_deinit
      Src: /src/dbus-broker/src/dbus/connection.c:93,1
    - Dst: socket_deinit
      Src: /src/dbus-broker/src/dbus/connection.c:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - connection
    argTypes:
    - Connection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 95
    functionName: connection_deinit
    functionSourceFile: /src/dbus-broker/src/dbus/connection.c
    functionUses: 0
    functionsReached:
    - sasl_client_deinit
    - socket_deinit
    - sasl_server_deinit
    - dispatch_file_deinit
    linkageType: ''
    returnType: void
    signature: void connection_deinit(Connection *connection)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: socket_get_stats
      Src: /src/dbus-broker/src/dbus/connection.c:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - connection
    - n_in_bytesp
    - n_in_fdsp
    - n_out_bytesp
    - n_out_fdsp
    argTypes:
    - Connection*
    - unsigned int*
    - unsigned int*
    - unsigned int*
    - unsigned int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 106
    functionName: connection_get_stats
    functionSourceFile: /src/dbus-broker/src/dbus/connection.c
    functionUses: 0
    functionsReached:
    - socket_get_stats
    linkageType: ''
    returnType: void
    signature: "void connection_get_stats(Connection *connection,\n                          unsigned
      int *n_in_bytesp,\n                          unsigned int *n_in_fdsp,\n                          unsigned
      int *n_out_bytesp,\n                          unsigned int *n_out_fdsp)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/connection.c:114,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/connection.c:115,1
    - Dst: sasl_server_dispatch
      Src: /src/dbus-broker/src/dbus/connection.c:118,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/connection.c:124,1
    - Dst: sasl_client_dispatch
      Src: /src/dbus-broker/src/dbus/connection.c:128,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/connection.c:136,1
    - Dst: sasl_server_is_done
      Src: /src/dbus-broker/src/dbus/connection.c:142,1
    - Dst: sasl_client_is_done
      Src: /src/dbus-broker/src/dbus/connection.c:143,1
    - Dst: socket_queue_line
      Src: /src/dbus-broker/src/dbus/connection.c:161,1
    - Dst: dispatch_file_select
      Src: /src/dbus-broker/src/dbus/connection.c:163,1
    - Dst: connection_shutdown
      Src: /src/dbus-broker/src/dbus/connection.c:165,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/connection.c:167,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 37
    argCount: 3
    argNames:
    - connection
    - input
    - n_input
    argTypes:
    - Connection*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 171
    functionName: connection_feed_sasl
    functionSourceFile: /src/dbus-broker/src/dbus/connection.c
    functionUses: 0
    functionsReached:
    - sasl_server_dispatch
    - dispatch_file_select
    - sasl_client_is_done
    - sasl_server_is_done
    - sasl_client_dispatch
    - c_assert
    - connection_shutdown
    - socket_queue_line
    - error_fold
    linkageType: ''
    returnType: int
    signature: int connection_feed_sasl(Connection *connection, const char *input,
      size_t n_input)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/connection.c:179,1
    - Dst: socket_is_running
      Src: /src/dbus-broker/src/dbus/connection.c:179,1
    - Dst: connection_feed_sasl
      Src: /src/dbus-broker/src/dbus/connection.c:183,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/connection.c:185,1
    - Dst: dispatch_file_select
      Src: /src/dbus-broker/src/dbus/connection.c:188,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - connection
    argTypes:
    - Connection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 176
    functionDepth: 2
    functionLinenumber: 176
    functionLinenumberEnd: 190
    functionName: connection_open
    functionSourceFile: /src/dbus-broker/src/dbus/connection.c
    functionUses: 1
    functionsReached:
    - dispatch_file_select
    - socket_is_running
    - c_assert
    - connection_feed_sasl
    - error_fold
    linkageType: ''
    returnType: int
    signature: int connection_open(Connection *connection)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: socket_shutdown
      Src: /src/dbus-broker/src/dbus/connection.c:203,1
    - Dst: socket_is_running
      Src: /src/dbus-broker/src/dbus/connection.c:204,1
    - Dst: dispatch_file_select
      Src: /src/dbus-broker/src/dbus/connection.c:205,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - connection
    argTypes:
    - Connection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 195
    functionDepth: 1
    functionLinenumber: 195
    functionLinenumberEnd: 206
    functionName: connection_shutdown
    functionSourceFile: /src/dbus-broker/src/dbus/connection.c
    functionUses: 2
    functionsReached:
    - dispatch_file_select
    - socket_is_running
    - socket_shutdown
    linkageType: ''
    returnType: void
    signature: void connection_shutdown(Connection *connection)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: socket_close
      Src: /src/dbus-broker/src/dbus/connection.c:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - connection
    argTypes:
    - Connection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 213
    functionName: connection_close
    functionSourceFile: /src/dbus-broker/src/dbus/connection.c
    functionUses: 0
    functionsReached:
    - socket_close
    linkageType: ''
    returnType: void
    signature: void connection_close(Connection *connection)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/dbus/connection.c:223,1
    - Dst: socket_dispatch
      Src: /src/dbus-broker/src/dbus/connection.c:225,1
    - Dst: dispatch_file_clear
      Src: /src/dbus-broker/src/dbus/connection.c:227,1
    - Dst: dispatch_file_deselect
      Src: /src/dbus-broker/src/dbus/connection.c:229,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/connection.c:231,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - connection
    - events
    argTypes:
    - Connection*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 236
    functionName: connection_dispatch
    functionSourceFile: /src/dbus-broker/src/dbus/connection.c
    functionUses: 1
    functionsReached:
    - socket_dispatch
    - dispatch_file_deselect
    - dispatch_file_clear
    - C_ARRAY_SIZE
    - error_fold
    linkageType: ''
    returnType: int
    signature: int connection_dispatch(Connection *connection, uint32_t events)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/connection.c:242,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/connection.c:247,1
    - Dst: socket_dequeue_line
      Src: /src/dbus-broker/src/dbus/connection.c:249,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/connection.c:251,1
    - Dst: connection_feed_sasl
      Src: /src/dbus-broker/src/dbus/connection.c:258,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/dbus/connection.c:260,1
    - Dst: socket_dequeue
      Src: /src/dbus-broker/src/dbus/connection.c:264,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/connection.c:271,1
    - Dst: fdlist_count
      Src: /src/dbus-broker/src/dbus/connection.c:285,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/connection.c:292,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 2
    argNames:
    - connection
    - messagep
    argTypes:
    - Connection*
    - Message**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 241
    functionDepth: 2
    functionLinenumber: 241
    functionLinenumberEnd: 303
    functionName: connection_dequeue
    functionSourceFile: /src/dbus-broker/src/dbus/connection.c
    functionUses: 1
    functionsReached:
    - fdlist_count
    - socket_dequeue
    - _c_unlikely_
    - socket_dequeue_line
    - _c_cleanup_
    - error_trace
    - connection_feed_sasl
    - error_fold
    linkageType: ''
    returnType: int
    signature: int connection_dequeue(Connection *connection, Message **messagep)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: fdlist_count
      Src: /src/dbus-broker/src/dbus/connection.c:311,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/connection.c:326,1
    - Dst: socket_queue
      Src: /src/dbus-broker/src/dbus/connection.c:333,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/connection.c:339,1
    - Dst: dispatch_file_select
      Src: /src/dbus-broker/src/dbus/connection.c:341,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - connection
    - user
    - message
    argTypes:
    - Connection*
    - User*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 308
    functionDepth: 1
    functionLinenumber: 308
    functionLinenumberEnd: 343
    functionName: connection_queue
    functionSourceFile: /src/dbus-broker/src/dbus/connection.c
    functionUses: 2
    functionsReached:
    - dispatch_file_select
    - fdlist_count
    - _c_unlikely_
    - socket_queue
    - error_fold
    linkageType: ''
    returnType: int
    signature: int connection_queue(Connection *connection, User *user, Message *message)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_likely_
      Src: /src/dbus-broker/src/dbus/sasl.h:75,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - client
    argTypes:
    - SASLClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 76
    functionName: sasl_client_is_done
    functionSourceFile: /src/dbus-broker/src/dbus/sasl.h
    functionUses: 1
    functionsReached:
    - _c_likely_
    linkageType: ''
    returnType: bool
    signature: bool sasl_client_is_done(SASLClient *client)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_likely_
      Src: /src/dbus-broker/src/dbus/sasl.h:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - server
    argTypes:
    - SASLServer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: sasl_server_is_done
    functionSourceFile: /src/dbus-broker/src/dbus/sasl.h
    functionUses: 1
    functionsReached:
    - _c_likely_
    linkageType: ''
    returnType: bool
    signature: bool sasl_server_is_done(SASLServer *server)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _id
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 35
    functionName: ADDRESS_INIT_ID
    functionSourceFile: /src/dbus-broker/src/dbus/address.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ADDRESS_INIT_ID(_id)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 36
    functionName: ADDRESS_INIT_NAME
    functionSourceFile: /src/dbus-broker/src/dbus/address.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ADDRESS_INIT_NAME(_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _big_endian
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 100
    functionName: MESSAGE_INIT
    functionSourceFile: /src/dbus-broker/src/dbus/message.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MESSAGE_INIT(_big_endian)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ref_inc
      Src: /src/dbus-broker/src/dbus/message.h:127,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - message
    argTypes:
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 129
    functionName: message_ref
    functionSourceFile: /src/dbus-broker/src/dbus/message.h
    functionUses: 0
    functionsReached:
    - ref_inc
    linkageType: ''
    returnType: Message
    signature: Message *message_ref(Message *message)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ref_dec
      Src: /src/dbus-broker/src/dbus/message.h:136,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - message
    argTypes:
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 138
    functionName: message_unref
    functionSourceFile: /src/dbus-broker/src/dbus/message.h
    functionUses: 0
    functionsReached:
    - ref_dec
    linkageType: ''
    returnType: Message
    signature: Message *message_unref(Message *message)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/message.h:145,1
    - Dst: _c_likely_
      Src: /src/dbus-broker/src/dbus/message.h:148,1
    - Dst: le32toh
      Src: /src/dbus-broker/src/dbus/message.h:149,1
    - Dst: be32toh
      Src: /src/dbus-broker/src/dbus/message.h:151,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - message
    argTypes:
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 152
    functionName: message_read_serial
    functionSourceFile: /src/dbus-broker/src/dbus/message.h
    functionUses: 0
    functionsReached:
    - le32toh
    - _c_unlikely_
    - _c_likely_
    - be32toh
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t message_read_serial(Message *message)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/protocol.c:29,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 22
    argCount: 3
    argNames:
    - name
    - n_name
    - namespace
    argTypes:
    - char*
    - size_t
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 9
    functionDepth: 0
    functionLinenumber: 9
    functionLinenumberEnd: 41
    functionName: dbus_validate_name_common
    functionSourceFile: /src/dbus-broker/src/dbus/protocol.c
    functionUses: 0
    functionsReached:
    - _c_unlikely_
    linkageType: ''
    returnType: bool
    signature: bool dbus_validate_name_common(const char *name, size_t n_name, bool
      namespace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dbus_validate_name_common
      Src: /src/dbus-broker/src/dbus/protocol.c:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - n_name
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: dbus_validate_name
    functionSourceFile: /src/dbus-broker/src/dbus/protocol.c
    functionUses: 1
    functionsReached:
    - dbus_validate_name_common
    linkageType: ''
    returnType: bool
    signature: bool dbus_validate_name(const char *name, size_t n_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dbus_validate_name_common
      Src: /src/dbus-broker/src/dbus/protocol.c:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - namespace
    - n_namespace
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: dbus_validate_namespace
    functionSourceFile: /src/dbus-broker/src/dbus/protocol.c
    functionUses: 0
    functionsReached:
    - dbus_validate_name_common
    linkageType: ''
    returnType: bool
    signature: bool dbus_validate_namespace(const char *namespace, size_t n_namespace)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/protocol.c:92,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 17
    argCount: 2
    argNames:
    - interface
    - n_interface
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 103
    functionName: dbus_validate_interface
    functionSourceFile: /src/dbus-broker/src/dbus/protocol.c
    functionUses: 0
    functionsReached:
    - _c_unlikely_
    linkageType: ''
    returnType: bool
    signature: bool dbus_validate_interface(const char *interface, size_t n_interface)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/protocol.c:122,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 9
    argCount: 2
    argNames:
    - member
    - n_member
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 131
    functionName: dbus_validate_member
    functionSourceFile: /src/dbus-broker/src/dbus/protocol.c
    functionUses: 0
    functionsReached:
    - _c_unlikely_
    linkageType: ''
    returnType: bool
    signature: bool dbus_validate_member(const char *member, size_t n_member)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dbus_validate_interface
      Src: /src/dbus-broker/src/dbus/protocol.c:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - n_name
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 144
    functionName: dbus_validate_error_name
    functionSourceFile: /src/dbus-broker/src/dbus/protocol.c
    functionUses: 0
    functionsReached:
    - dbus_validate_interface
    linkageType: ''
    returnType: bool
    signature: bool dbus_validate_error_name(const char *name, size_t n_name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - SocketBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: socket_buffer_get_base
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *socket_buffer_get_base(SocketBuffer *buffer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/dbus/socket.c:50,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/dbus/socket.c:51,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/dbus/socket.c:52,1
    - Dst: message_unref
      Src: /src/dbus-broker/src/dbus/socket.c:53,1
    - Dst: free
      Src: /src/dbus-broker/src/dbus/socket.c:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - SocketBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 46
    functionDepth: 2
    functionLinenumber: 46
    functionLinenumberEnd: 57
    functionName: socket_buffer_free
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached:
    - user_charge_deinit
    - c_list_unlink
    - free
    - message_unref
    linkageType: ''
    returnType: SocketBuffer
    signature: SocketBuffer *socket_buffer_free(SocketBuffer *buffer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/dbus-broker/src/dbus/socket.c:64,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/dbus/socket.c:66,1
    - Dst: C_LIST_INIT
      Src: /src/dbus-broker/src/dbus/socket.c:68,1
    - Dst: user_charge_init
      Src: /src/dbus-broker/src/dbus/socket.c:69,1
    - Dst: user_charge_init
      Src: /src/dbus-broker/src/dbus/socket.c:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - bufferp
    - n_vecs
    - n_line
    argTypes:
    - SocketBuffer**
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 78
    functionName: socket_buffer_new_internal
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached:
    - C_LIST_INIT
    - malloc
    - error_origin
    - user_charge_init
    linkageType: ''
    returnType: int
    signature: int socket_buffer_new_internal(SocketBuffer **bufferp, size_t n_vecs,
      size_t n_line)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/socket.c:84,1
    - Dst: socket_buffer_new_internal
      Src: /src/dbus-broker/src/dbus/socket.c:87,1
    - Dst: c_max
      Src: /src/dbus-broker/src/dbus/socket.c:87,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/dbus/socket.c:89,1
    - Dst: socket_buffer_get_base
      Src: /src/dbus-broker/src/dbus/socket.c:91,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/dbus/socket.c:93,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/socket.c:99,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 4
    argNames:
    - bufferp
    - socket
    - user
    - n
    argTypes:
    - SocketBuffer**
    - Socket*
    - User*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 104
    functionName: socket_buffer_new_line
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached:
    - socket_buffer_get_base
    - c_max
    - _c_cleanup_
    - error_trace
    - socket_buffer_new_internal
    - user_charge
    - error_fold
    linkageType: ''
    returnType: int
    signature: "int socket_buffer_new_line(SocketBuffer **bufferp,\n                                  Socket
      *socket,\n                                  User *user,\n                                  size_t
      n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/socket.c:110,1
    - Dst: socket_buffer_new_internal
      Src: /src/dbus-broker/src/dbus/socket.c:113,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/dbus/socket.c:113,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/dbus/socket.c:115,1
    - Dst: message_ref
      Src: /src/dbus-broker/src/dbus/socket.c:117,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/dbus/socket.c:118,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/dbus/socket.c:120,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/socket.c:126,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/dbus/socket.c:128,1
    - Dst: fdlist_count
      Src: /src/dbus-broker/src/dbus/socket.c:132,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/socket.c:134,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - bufferp
    - socket
    - user
    - message
    argTypes:
    - SocketBuffer**
    - Socket*
    - User*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 106
    functionDepth: 2
    functionLinenumber: 106
    functionLinenumberEnd: 139
    functionName: socket_buffer_new_message
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached:
    - c_memcpy
    - fdlist_count
    - _c_cleanup_
    - message_ref
    - error_trace
    - socket_buffer_new_internal
    - C_ARRAY_SIZE
    - user_charge
    - error_fold
    linkageType: ''
    returnType: int
    signature: "int socket_buffer_new_message(SocketBuffer **bufferp,\n                                     Socket
      *socket,\n                                     User *user,\n                                     Message
      *message)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/socket.c:144,1
    - Dst: socket_buffer_get_base
      Src: /src/dbus-broker/src/dbus/socket.c:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - SocketBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 151
    functionName: socket_buffer_get_line_space
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached:
    - c_assert
    - socket_buffer_get_base
    linkageType: ''
    returnType: size_t
    signature: size_t socket_buffer_get_line_space(SocketBuffer *buffer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/socket.c:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - buffer
    - datap
    - posp
    argTypes:
    - SocketBuffer*
    - char**
    - size_t**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 158
    functionName: socket_buffer_get_line_cursor
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached:
    - c_assert
    linkageType: ''
    returnType: void
    signature: void socket_buffer_get_line_cursor(SocketBuffer *buffer, char **datap,
      size_t **posp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - SocketBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 162
    functionName: socket_buffer_is_uncomsumed
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool socket_buffer_is_uncomsumed(SocketBuffer *buffer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - SocketBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionName: socket_buffer_is_consumed
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool socket_buffer_is_consumed(SocketBuffer *buffer)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: socket_buffer_is_consumed
      Src: /src/dbus-broker/src/dbus/socket.c:174,1
    - Dst: c_min
      Src: /src/dbus-broker/src/dbus/socket.c:175,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/socket.c:187,1
    - Dst: socket_buffer_is_consumed
      Src: /src/dbus-broker/src/dbus/socket.c:189,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - buffer
    - n
    argTypes:
    - SocketBuffer*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 190
    functionName: socket_buffer_consume
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached:
    - c_assert
    - socket_buffer_is_consumed
    - c_min
    linkageType: ''
    returnType: bool
    signature: bool socket_buffer_consume(SocketBuffer *buffer, size_t n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: iqueue_flush
      Src: /src/dbus-broker/src/dbus/socket.c:193,1
    - Dst: message_unref
      Src: /src/dbus-broker/src/dbus/socket.c:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - socket
    argTypes:
    - Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 192
    functionDepth: 2
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionName: socket_discard_input
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached:
    - iqueue_flush
    - message_unref
    linkageType: ''
    returnType: void
    signature: void socket_discard_input(Socket *socket)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/dbus/socket.c:200,1
    - Dst: socket_buffer_free
      Src: /src/dbus-broker/src/dbus/socket.c:201,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - socket
    argTypes:
    - Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 197
    functionDepth: 3
    functionLinenumber: 197
    functionLinenumberEnd: 202
    functionName: socket_discard_output
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached:
    - socket_buffer_free
    - c_list_first_entry
    linkageType: ''
    returnType: void
    signature: void socket_discard_output(Socket *socket)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SOCKET_NULL
      Src: /src/dbus-broker/src/dbus/socket.c:216,1
    - Dst: user_ref
      Src: /src/dbus-broker/src/dbus/socket.c:217,1
    - Dst: iqueue_init
      Src: /src/dbus-broker/src/dbus/socket.c:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - socket
    - user
    - fd
    argTypes:
    - Socket*
    - User*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 220
    functionName: socket_init
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 1
    functionsReached:
    - SOCKET_NULL
    - iqueue_init
    - user_ref
    linkageType: ''
    returnType: void
    signature: void socket_init(Socket *socket, User *user, int fd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: socket_discard_input
      Src: /src/dbus-broker/src/dbus/socket.c:236,1
    - Dst: socket_discard_output
      Src: /src/dbus-broker/src/dbus/socket.c:237,1
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/dbus/socket.c:239,1
    - Dst: socket_buffer_free
      Src: /src/dbus-broker/src/dbus/socket.c:240,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/socket.c:242,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/dbus/socket.c:242,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/socket.c:243,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/dbus/socket.c:243,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/socket.c:244,1
    - Dst: iqueue_deinit
      Src: /src/dbus-broker/src/dbus/socket.c:246,1
    - Dst: user_unref
      Src: /src/dbus-broker/src/dbus/socket.c:248,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - socket
    argTypes:
    - Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 233
    functionDepth: 4
    functionLinenumber: 233
    functionLinenumberEnd: 249
    functionName: socket_deinit
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 1
    functionsReached:
    - c_list_first_entry
    - socket_discard_output
    - socket_buffer_free
    - iqueue_deinit
    - user_unref
    - c_assert
    - socket_discard_input
    - c_list_is_empty
    linkageType: ''
    returnType: void
    signature: void socket_deinit(Socket *socket)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/socket.c:252,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/dbus/socket.c:255,1
    - Dst: iqueue_is_eof
      Src: /src/dbus-broker/src/dbus/socket.c:256,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 3
    argCount: 1
    argNames:
    - socket
    argTypes:
    - Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 258
    functionName: socket_might_reset
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached:
    - _c_unlikely_
    - iqueue_is_eof
    - c_list_is_empty
    linkageType: ''
    returnType: void
    signature: void socket_might_reset(Socket *socket)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: socket_might_reset
      Src: /src/dbus-broker/src/dbus/socket.c:268,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - socket
    argTypes:
    - Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 260
    functionDepth: 2
    functionLinenumber: 260
    functionLinenumberEnd: 270
    functionName: socket_hangup_input
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached:
    - socket_might_reset
    linkageType: ''
    returnType: void
    signature: void socket_hangup_input(Socket *socket)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: socket_discard_output
      Src: /src/dbus-broker/src/dbus/socket.c:283,1
    - Dst: socket_might_reset
      Src: /src/dbus-broker/src/dbus/socket.c:284,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - socket
    argTypes:
    - Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 272
    functionDepth: 4
    functionLinenumber: 272
    functionLinenumberEnd: 286
    functionName: socket_hangup_output
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached:
    - socket_might_reset
    - socket_discard_output
    linkageType: ''
    returnType: void
    signature: void socket_hangup_output(Socket *socket)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/socket.c:291,1
    - Dst: shutdown
      Src: /src/dbus-broker/src/dbus/socket.c:294,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/socket.c:295,1
    - Dst: socket_hangup_output
      Src: /src/dbus-broker/src/dbus/socket.c:297,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - socket
    argTypes:
    - Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 288
    functionDepth: 5
    functionLinenumber: 288
    functionLinenumberEnd: 299
    functionName: socket_shutdown_now
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached:
    - c_assert
    - shutdown
    - socket_hangup_output
    linkageType: ''
    returnType: void
    signature: void socket_shutdown_now(Socket *socket)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: iqueue_pop_line
      Src: /src/dbus-broker/src/dbus/socket.c:332,1
    - Dst: socket_might_reset
      Src: /src/dbus-broker/src/dbus/socket.c:335,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/socket.c:336,1
    - Dst: socket_close
      Src: /src/dbus-broker/src/dbus/socket.c:343,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/socket.c:347,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - socket
    - linep
    - np
    argTypes:
    - Socket*
    - char**
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 329
    functionDepth: 2
    functionLinenumber: 329
    functionLinenumberEnd: 351
    functionName: socket_dequeue_line
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 1
    functionsReached:
    - _c_unlikely_
    - iqueue_pop_line
    - socket_might_reset
    - socket_close
    - error_fold
    linkageType: ''
    returnType: int
    signature: int socket_dequeue_line(Socket *socket, const char **linep, size_t
      *np)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: iqueue_get_target
      Src: /src/dbus-broker/src/dbus/socket.c:380,1
    - Dst: iqueue_set_target
      Src: /src/dbus-broker/src/dbus/socket.c:381,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/socket.c:385,1
    - Dst: iqueue_pop_data
      Src: /src/dbus-broker/src/dbus/socket.c:389,1
    - Dst: socket_close
      Src: /src/dbus-broker/src/dbus/socket.c:393,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/socket.c:396,1
    - Dst: message_new_incoming
      Src: /src/dbus-broker/src/dbus/socket.c:399,1
    - Dst: socket_close
      Src: /src/dbus-broker/src/dbus/socket.c:402,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/socket.c:405,1
    - Dst: iqueue_set_target
      Src: /src/dbus-broker/src/dbus/socket.c:408,1
    - Dst: message_unref
      Src: /src/dbus-broker/src/dbus/socket.c:412,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/socket.c:413,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/socket.c:419,1
    - Dst: iqueue_pop_data
      Src: /src/dbus-broker/src/dbus/socket.c:421,1
    - Dst: socket_close
      Src: /src/dbus-broker/src/dbus/socket.c:425,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/socket.c:428,1
    - Dst: socket_might_reset
      Src: /src/dbus-broker/src/dbus/socket.c:436,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/socket.c:437,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 57
    argCount: 2
    argNames:
    - socket
    - messagep
    argTypes:
    - Socket*
    - Message**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 376
    functionDepth: 2
    functionLinenumber: 376
    functionLinenumberEnd: 442
    functionName: socket_dequeue
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 1
    functionsReached:
    - message_new_incoming
    - _c_unlikely_
    - iqueue_pop_data
    - iqueue_get_target
    - message_unref
    - iqueue_set_target
    - c_assert
    - socket_might_reset
    - socket_close
    - error_fold
    linkageType: ''
    returnType: int
    signature: int socket_dequeue(Socket *socket, Message **messagep)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/socket.c:465,1
    - Dst: c_list_last_entry
      Src: /src/dbus-broker/src/dbus/socket.c:468,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/socket.c:469,1
    - Dst: socket_buffer_get_line_space
      Src: /src/dbus-broker/src/dbus/socket.c:469,1
    - Dst: socket_buffer_new_line
      Src: /src/dbus-broker/src/dbus/socket.c:470,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/socket.c:470,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/dbus/socket.c:472,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/dbus/socket.c:474,1
    - Dst: socket_buffer_get_line_cursor
      Src: /src/dbus-broker/src/dbus/socket.c:477,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/dbus/socket.c:479,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/dbus/socket.c:483,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/socket.c:483,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/socket.c:484,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 4
    argNames:
    - socket
    - user
    - line_in
    - n
    argTypes:
    - Socket*
    - User*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 459
    functionDepth: 3
    functionLinenumber: 459
    functionLinenumberEnd: 487
    functionName: socket_queue_line
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 1
    functionsReached:
    - c_memcpy
    - c_list_last_entry
    - strlen
    - c_list_link_tail
    - _c_unlikely_
    - socket_buffer_new_line
    - error_trace
    - socket_buffer_get_line_cursor
    - socket_buffer_get_line_space
    linkageType: ''
    returnType: int
    signature: int socket_queue_line(Socket *socket, User *user, const char *line_in,
      size_t n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/socket.c:502,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/socket.c:505,1
    - Dst: socket_buffer_new_message
      Src: /src/dbus-broker/src/dbus/socket.c:508,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/dbus/socket.c:510,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/dbus/socket.c:512,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - socket
    - user
    - message
    argTypes:
    - Socket*
    - User*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 501
    functionDepth: 3
    functionLinenumber: 501
    functionLinenumberEnd: 515
    functionName: socket_queue
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 1
    functionsReached:
    - socket_buffer_new_message
    - c_list_link_tail
    - _c_unlikely_
    - _c_cleanup_
    - error_trace
    linkageType: ''
    returnType: int
    signature: int socket_queue(Socket *socket, User *user, Message *message)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: CMSG_SPACE
      Src: /src/dbus-broker/src/dbus/socket.c:525,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/socket.c:533,1
    - Dst: recvmsg
      Src: /src/dbus-broker/src/dbus/socket.c:545,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/socket.c:546,1
    - Dst: socket_hangup_input
      Src: /src/dbus-broker/src/dbus/socket.c:552,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/socket.c:554,1
    - Dst: socket_hangup_input
      Src: /src/dbus-broker/src/dbus/socket.c:576,1
    - Dst: socket_hangup_output
      Src: /src/dbus-broker/src/dbus/socket.c:577,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/dbus/socket.c:581,1
    - Dst: CMSG_FIRSTHDR
      Src: /src/dbus-broker/src/dbus/socket.c:584,1
    - Dst: CMSG_NXTHDR
      Src: /src/dbus-broker/src/dbus/socket.c:584,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/socket.c:591,1
    - Dst: CMSG_DATA
      Src: /src/dbus-broker/src/dbus/socket.c:592,1
    - Dst: CMSG_LEN
      Src: /src/dbus-broker/src/dbus/socket.c:593,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/socket.c:594,1
    - Dst: socket_close
      Src: /src/dbus-broker/src/dbus/socket.c:632,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/socket.c:637,1
    - Dst: close
      Src: /src/dbus-broker/src/dbus/socket.c:643,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/dbus/socket.c:645,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/socket.c:648,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/socket.c:663,1
    - Dst: socket_close
      Src: /src/dbus-broker/src/dbus/socket.c:664,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/dbus/socket.c:669,1
    - Dst: socket_close
      Src: /src/dbus-broker/src/dbus/socket.c:680,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/socket.c:684,1
    - Dst: fdlist_new_consume_fds
      Src: /src/dbus-broker/src/dbus/socket.c:688,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/dbus/socket.c:690,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/socket.c:691,1
    - Dst: close
      Src: /src/dbus-broker/src/dbus/socket.c:701,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 84
    argCount: 6
    argNames:
    - socket
    - buffer
    - from
    - to
    - fdsp
    - charge_fds
    argTypes:
    - Socket*
    - void*
    - size_t*
    - size_t
    - FDList**
    - UserCharge*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 703
      start: 517
    functionDepth: 5
    functionLinenumber: 517
    functionLinenumberEnd: 703
    functionName: socket_recvmsg
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached:
    - error_fold
    - close
    - recvmsg
    - CMSG_SPACE
    - _c_unlikely_
    - CMSG_NXTHDR
    - error_origin
    - user_charge_deinit
    - CMSG_FIRSTHDR
    - CMSG_LEN
    - socket_hangup_input
    - c_assert
    - fdlist_new_consume_fds
    - socket_close
    - user_charge
    - socket_hangup_output
    - fprintf
    - CMSG_DATA
    linkageType: ''
    returnType: int
    signature: "int socket_recvmsg(Socket *socket,\n                          void
      *buffer,\n                          size_t *from,\n                          size_t
      to,\n                          FDList **fdsp,\n                          UserCharge
      *charge_fds)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: iqueue_get_cursor
      Src: /src/dbus-broker/src/dbus/socket.c:715,1
    - Dst: socket_close
      Src: /src/dbus-broker/src/dbus/socket.c:725,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/socket.c:728,1
    - Dst: socket_recvmsg
      Src: /src/dbus-broker/src/dbus/socket.c:731,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - socket
    argTypes:
    - Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 737
      start: 705
    functionDepth: 6
    functionLinenumber: 705
    functionLinenumberEnd: 737
    functionName: socket_dispatch_read
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached:
    - socket_recvmsg
    - socket_close
    - iqueue_get_cursor
    - error_fold
    linkageType: ''
    returnType: int
    signature: int socket_dispatch_read(Socket *socket)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/dbus/socket.c:745,1
    - Dst: ioctl
      Src: /src/dbus-broker/src/dbus/socket.c:746,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/dbus/socket.c:748,1
    - Dst: c_list_for_each_entry_safe
      Src: /src/dbus-broker/src/dbus/socket.c:792,1
    - Dst: socket_buffer_free
      Src: /src/dbus-broker/src/dbus/socket.c:793,1
    - Dst: socket_might_reset
      Src: /src/dbus-broker/src/dbus/socket.c:795,1
    - Dst: c_list_for_each_entry
      Src: /src/dbus-broker/src/dbus/socket.c:802,1
    - Dst: socket_buffer_is_uncomsumed
      Src: /src/dbus-broker/src/dbus/socket.c:811,1
    - Dst: fdlist_size
      Src: /src/dbus-broker/src/dbus/socket.c:813,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/dbus/socket.c:820,1
    - Dst: fdlist_count
      Src: /src/dbus-broker/src/dbus/socket.c:841,1
    - Dst: sendmmsg
      Src: /src/dbus-broker/src/dbus/socket.c:848,1
    - Dst: socket_hangup_output
      Src: /src/dbus-broker/src/dbus/socket.c:897,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/dbus/socket.c:901,1
    - Dst: c_list_for_each_entry_safe
      Src: /src/dbus-broker/src/dbus/socket.c:905,1
    - Dst: socket_buffer_consume
      Src: /src/dbus-broker/src/dbus/socket.c:909,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/dbus/socket.c:911,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/dbus/socket.c:912,1
    - Dst: socket_buffer_free
      Src: /src/dbus-broker/src/dbus/socket.c:914,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/socket.c:920,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/dbus/socket.c:922,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/socket.c:923,1
    - Dst: socket_shutdown_now
      Src: /src/dbus-broker/src/dbus/socket.c:924,1
    - Dst: _c_likely_
      Src: /src/dbus-broker/src/dbus/socket.c:926,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/dbus/socket.c:926,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 82
    argCount: 1
    argNames:
    - socket
    argTypes:
    - Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 931
      start: 739
    functionDepth: 6
    functionLinenumber: 739
    functionLinenumberEnd: 931
    functionName: socket_dispatch_write
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 0
    functionsReached:
    - c_list_for_each_entry
    - error_origin
    - socket_buffer_free
    - fdlist_size
    - c_list_for_each_entry_safe
    - fdlist_count
    - _c_unlikely_
    - _c_likely_
    - socket_might_reset
    - C_ARRAY_SIZE
    - socket_shutdown_now
    - c_list_unlink
    - socket_buffer_consume
    - c_assert
    - socket_hangup_output
    - c_list_is_empty
    - sendmmsg
    - c_list_link_tail
    - ioctl
    - socket_buffer_is_uncomsumed
    linkageType: ''
    returnType: int
    signature: int socket_dispatch_write(Socket *socket)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: socket_dispatch_read
      Src: /src/dbus-broker/src/dbus/socket.c:950,1
    - Dst: socket_dispatch_write
      Src: /src/dbus-broker/src/dbus/socket.c:953,1
    - Dst: socket_hangup_output
      Src: /src/dbus-broker/src/dbus/socket.c:956,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - socket
    - event
    argTypes:
    - Socket*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 961
      start: 945
    functionDepth: 7
    functionLinenumber: 945
    functionLinenumberEnd: 961
    functionName: socket_dispatch
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 1
    functionsReached:
    - socket_hangup_output
    - socket_dispatch_write
    - socket_dispatch_read
    linkageType: ''
    returnType: int
    signature: int socket_dispatch(Socket *socket, uint32_t event)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/dbus/socket.c:974,1
    - Dst: socket_shutdown_now
      Src: /src/dbus-broker/src/dbus/socket.c:975,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - socket
    argTypes:
    - Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 977
      start: 971
    functionDepth: 6
    functionLinenumber: 971
    functionLinenumberEnd: 977
    functionName: socket_shutdown
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 1
    functionsReached:
    - socket_shutdown_now
    - c_list_is_empty
    linkageType: ''
    returnType: void
    signature: void socket_shutdown(Socket *socket)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: socket_hangup_input
      Src: /src/dbus-broker/src/dbus/socket.c:988,1
    - Dst: socket_shutdown
      Src: /src/dbus-broker/src/dbus/socket.c:989,1
    - Dst: socket_discard_input
      Src: /src/dbus-broker/src/dbus/socket.c:998,1
    - Dst: socket_might_reset
      Src: /src/dbus-broker/src/dbus/socket.c:999,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - socket
    argTypes:
    - Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1000
      start: 987
    functionDepth: 7
    functionLinenumber: 987
    functionLinenumberEnd: 1000
    functionName: socket_close
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 5
    functionsReached:
    - socket_discard_input
    - socket_hangup_input
    - socket_might_reset
    - socket_shutdown
    linkageType: ''
    returnType: void
    signature: void socket_close(Socket *socket)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_list_for_each_entry
      Src: /src/dbus-broker/src/dbus/socket.c:1025,1
    - Dst: c_list_for_each_entry
      Src: /src/dbus-broker/src/dbus/socket.c:1030,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 5
    argNames:
    - socket
    - n_in_bytesp
    - n_in_fdsp
    - n_out_bytesp
    - n_out_fdsp
    argTypes:
    - Socket*
    - unsigned int*
    - unsigned int*
    - unsigned int*
    - unsigned int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1039
      start: 1012
    functionDepth: 0
    functionLinenumber: 1012
    functionLinenumberEnd: 1039
    functionName: socket_get_stats
    functionSourceFile: /src/dbus-broker/src/dbus/socket.c
    functionUses: 1
    functionsReached:
    - c_list_for_each_entry
    linkageType: ''
    returnType: void
    signature: "void socket_get_stats(Socket *socket,\n                      unsigned
      int *n_in_bytesp,\n                      unsigned int *n_in_fdsp,\n                      unsigned
      int *n_out_bytesp,\n                      unsigned int *n_out_fdsp)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/test-stitching.c:42,1
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/src/dbus/test-stitching.c:49,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/dbus/test-stitching.c:50,1
    - Dst: c_dvar_is_big_endian
      Src: /src/dbus-broker/src/dbus/test-stitching.c:51,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/dbus/test-stitching.c:57,1
    - Dst: malloc
      Src: /src/dbus-broker/src/dbus/test-stitching.c:63,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-stitching.c:64,1
    - Dst: c_memset
      Src: /src/dbus-broker/src/dbus/test-stitching.c:65,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/dbus/test-stitching.c:68,1
    - Dst: free
      Src: /src/dbus-broker/src/dbus/test-stitching.c:72,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/dbus/test-stitching.c:76,1
    - Dst: malloc
      Src: /src/dbus-broker/src/dbus/test-stitching.c:83,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-stitching.c:84,1
    - Dst: c_memset
      Src: /src/dbus-broker/src/dbus/test-stitching.c:85,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/dbus/test-stitching.c:89,1
    - Dst: free
      Src: /src/dbus-broker/src/dbus/test-stitching.c:94,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/dbus/test-stitching.c:98,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/dbus/test-stitching.c:103,1
    - Dst: c_dvar_end_write
      Src: /src/dbus-broker/src/dbus/test-stitching.c:104,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-stitching.c:105,1
    - Dst: message_new_outgoing
      Src: /src/dbus-broker/src/dbus/test-stitching.c:107,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-stitching.c:108,1
    - Dst: message_parse_metadata
      Src: /src/dbus-broker/src/dbus/test-stitching.c:110,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-stitching.c:111,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 35
    argCount: 4
    argNames:
    - before
    - sender_early
    - after
    - sender_late
    argTypes:
    - size_t
    - char*
    - size_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 114
    functionName: test_new_message
    functionSourceFile: /src/dbus-broker/src/dbus/test-stitching.c
    functionUses: 0
    functionsReached:
    - c_dvar_begin_write
    - message_parse_metadata
    - c_dvar_is_big_endian
    - _c_cleanup_
    - c_memset
    - message_new_outgoing
    - c_dvar_write
    - free
    - c_assert
    - malloc
    - c_dvar_end_write
    linkageType: ''
    returnType: Message
    signature: Message *test_new_message(size_t before, const char *sender_early,
      size_t after, const char *sender_late)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/test-stitching.c:117,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/test-stitching.c:118,1
    - Dst: test_new_message
      Src: /src/dbus-broker/src/dbus/test-stitching.c:121,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/dbus/test-stitching.c:123,1
    - Dst: malloc
      Src: /src/dbus-broker/src/dbus/test-stitching.c:126,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-stitching.c:127,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/dbus/test-stitching.c:129,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/dbus/test-stitching.c:130,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-stitching.c:134,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-stitching.c:135,1
    - Dst: memcmp
      Src: /src/dbus-broker/src/dbus/test-stitching.c:135,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - message
    - before
    - sender
    - after
    argTypes:
    - Message*
    - size_t
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 116
    functionDepth: 2
    functionLinenumber: 116
    functionLinenumberEnd: 136
    functionName: test_assert_message
    functionSourceFile: /src/dbus-broker/src/dbus/test-stitching.c
    functionUses: 0
    functionsReached:
    - c_memcpy
    - _c_cleanup_
    - malloc
    - test_new_message
    - c_assert
    - C_ARRAY_SIZE
    - memcmp
    linkageType: ''
    returnType: void
    signature: void test_assert_message(Message *message, size_t before, const char
      *sender, size_t after)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/dbus-broker/src/dbus/test-stitching.c:156,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-stitching.c:157,1
    - Dst: c_memset
      Src: /src/dbus-broker/src/dbus/test-stitching.c:158,1
    - Dst: malloc
      Src: /src/dbus-broker/src/dbus/test-stitching.c:165,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-stitching.c:166,1
    - Dst: c_memset
      Src: /src/dbus-broker/src/dbus/test-stitching.c:167,1
    - Dst: address_from_string
      Src: /src/dbus-broker/src/dbus/test-stitching.c:173,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-stitching.c:174,1
    - Dst: test_new_message
      Src: /src/dbus-broker/src/dbus/test-stitching.c:176,1
    - Dst: message_stitch_sender
      Src: /src/dbus-broker/src/dbus/test-stitching.c:177,1
    - Dst: test_assert_message
      Src: /src/dbus-broker/src/dbus/test-stitching.c:178,1
    - Dst: message_unref
      Src: /src/dbus-broker/src/dbus/test-stitching.c:179,1
    - Dst: free
      Src: /src/dbus-broker/src/dbus/test-stitching.c:181,1
    - Dst: free
      Src: /src/dbus-broker/src/dbus/test-stitching.c:182,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 138
    functionDepth: 3
    functionLinenumber: 138
    functionLinenumberEnd: 184
    functionName: test_stitching
    functionSourceFile: /src/dbus-broker/src/dbus/test-stitching.c
    functionUses: 0
    functionsReached:
    - address_from_string
    - message_stitch_sender
    - test_assert_message
    - c_memset
    - test_new_message
    - free
    - message_unref
    - c_assert
    - malloc
    linkageType: ''
    returnType: void
    signature: void test_stitching(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_stitching
      Src: /src/dbus-broker/src/dbus/test-stitching.c:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 186
    functionDepth: 4
    functionLinenumber: 186
    functionLinenumberEnd: 189
    functionName: main
    functionSourceFile: /src/dbus-broker/src/dbus/test-stitching.c
    functionUses: 0
    functionsReached:
    - test_stitching
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: IQUEUE_NULL
      Src: /src/dbus-broker/src/dbus/queue.c:15,1
    - Dst: user_ref
      Src: /src/dbus-broker/src/dbus/queue.c:16,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - iq
    - user
    argTypes:
    - IQueue*
    - User*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17
      start: 14
    functionDepth: 1
    functionLinenumber: 14
    functionLinenumberEnd: 17
    functionName: iqueue_init
    functionSourceFile: /src/dbus-broker/src/dbus/queue.c
    functionUses: 1
    functionsReached:
    - IQUEUE_NULL
    - user_ref
    linkageType: ''
    returnType: void
    signature: void iqueue_init(IQueue *iq, User *user)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: iqueue_flush
      Src: /src/dbus-broker/src/dbus/queue.c:23,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/queue.c:25,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/queue.c:26,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/queue.c:27,1
    - Dst: free
      Src: /src/dbus-broker/src/dbus/queue.c:30,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/dbus/queue.c:35,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/dbus/queue.c:36,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/dbus/queue.c:37,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/dbus/queue.c:38,1
    - Dst: user_unref
      Src: /src/dbus-broker/src/dbus/queue.c:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - iq
    argTypes:
    - IQueue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 22
    functionDepth: 1
    functionLinenumber: 22
    functionLinenumberEnd: 41
    functionName: iqueue_deinit
    functionSourceFile: /src/dbus-broker/src/dbus/queue.c
    functionUses: 1
    functionsReached:
    - iqueue_flush
    - free
    - user_unref
    - c_assert
    - user_charge_deinit
    linkageType: ''
    returnType: void
    signature: void iqueue_deinit(IQueue *iq)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fdlist_free
      Src: /src/dbus-broker/src/dbus/queue.c:50,1
    - Dst: fdlist_free
      Src: /src/dbus-broker/src/dbus/queue.c:55,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/dbus/queue.c:57,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/dbus/queue.c:58,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/dbus/queue.c:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - iq
    argTypes:
    - IQueue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 60
    functionName: iqueue_flush
    functionSourceFile: /src/dbus-broker/src/dbus/queue.c
    functionUses: 2
    functionsReached:
    - user_charge_deinit
    - fdlist_free
    linkageType: ''
    returnType: void
    signature: void iqueue_flush(IQueue *iq)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/queue.c:68,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/queue.c:69,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/dbus/queue.c:81,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/queue.c:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - iq
    - data
    - n_data
    argTypes:
    - IQueue*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 95
    functionName: iqueue_set_target
    functionSourceFile: /src/dbus-broker/src/dbus/queue.c
    functionUses: 1
    functionsReached:
    - c_assert
    - user_charge
    - error_fold
    linkageType: ''
    returnType: int
    signature: int iqueue_set_target(IQueue *iq, void *data, size_t n_data)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: memmove
      Src: /src/dbus-broker/src/dbus/queue.c:120,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/queue.c:151,1
    - Dst: malloc
      Src: /src/dbus-broker/src/dbus/queue.c:155,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/dbus/queue.c:157,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/dbus/queue.c:159,1
    - Dst: free
      Src: /src/dbus-broker/src/dbus/queue.c:165,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/queue.c:166,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/queue.c:170,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/queue.c:171,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/dbus/queue.c:173,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/queue.c:176,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/queue.c:177,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/queue.c:178,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/dbus/queue.c:180,1
    - Dst: free
      Src: /src/dbus-broker/src/dbus/queue.c:181,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/dbus/queue.c:182,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 47
    argCount: 6
    argNames:
    - iq
    - bufferp
    - fromp
    - top
    - fdsp
    - charge_fdsp
    argTypes:
    - IQueue*
    - void**
    - size_t**
    - size_t*
    - FDList***
    - UserCharge**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 232
    functionName: iqueue_get_cursor
    functionSourceFile: /src/dbus-broker/src/dbus/queue.c
    functionUses: 1
    functionsReached:
    - c_memcpy
    - memmove
    - _c_unlikely_
    - error_origin
    - free
    - user_charge
    - c_assert
    - user_charge_deinit
    - malloc
    - error_fold
    linkageType: ''
    returnType: int
    signature: "int iqueue_get_cursor(IQueue *iq,\n                      void **bufferp,\n
      \                     size_t **fromp,\n                      size_t *top,\n
      \                     FDList ***fdsp,\n                      UserCharge **charge_fdsp)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/queue.c:241,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/queue.c:260,1
    - Dst: fdlist_count
      Src: /src/dbus-broker/src/dbus/queue.c:260,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - iq
    - linep
    - np
    argTypes:
    - IQueue*
    - char**
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 237
    functionDepth: 1
    functionLinenumber: 237
    functionLinenumberEnd: 294
    functionName: iqueue_pop_line
    functionSourceFile: /src/dbus-broker/src/dbus/queue.c
    functionUses: 1
    functionsReached:
    - c_assert
    - _c_unlikely_
    - fdlist_count
    linkageType: ''
    returnType: int
    signature: int iqueue_pop_line(IQueue *iq, const char **linep, size_t *np)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/queue.c:302,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/queue.c:303,1
    - Dst: c_min
      Src: /src/dbus-broker/src/dbus/queue.c:315,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/dbus/queue.c:317,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/queue.c:347,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/dbus/queue.c:348,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/dbus/queue.c:373,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/dbus/queue.c:378,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 2
    argNames:
    - iq
    - fdsp
    argTypes:
    - IQueue*
    - FDList**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 299
    functionDepth: 1
    functionLinenumber: 299
    functionLinenumberEnd: 380
    functionName: iqueue_pop_data
    functionSourceFile: /src/dbus-broker/src/dbus/queue.c
    functionUses: 1
    functionsReached:
    - c_memcpy
    - _c_unlikely_
    - c_min
    - c_assert
    - user_charge_deinit
    linkageType: ''
    returnType: int
    signature: int iqueue_pop_data(IQueue *iq, FDList **fdsp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ADDRESS_INIT_ID
      Src: /src/dbus-broker/src/dbus/address.c:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - address
    - id
    argTypes:
    - Address*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: address_init_from_id
    functionSourceFile: /src/dbus-broker/src/dbus/address.c
    functionUses: 0
    functionsReached:
    - ADDRESS_INIT_ID
    linkageType: ''
    returnType: void
    signature: void address_init_from_id(Address *address, uint64_t id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ADDRESS_INIT_NAME
      Src: /src/dbus-broker/src/dbus/address.c:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - address
    - name
    argTypes:
    - Address*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 46
    functionName: address_init_from_name
    functionSourceFile: /src/dbus-broker/src/dbus/address.c
    functionUses: 0
    functionsReached:
    - ADDRESS_INIT_NAME
    linkageType: ''
    returnType: void
    signature: void address_init_from_name(Address *address, const char *name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/dbus-broker/src/dbus/address.c:78,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/address.c:78,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/address.c:81,1
    - Dst: strtoull
      Src: /src/dbus-broker/src/dbus/address.c:83,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 2
    argNames:
    - address
    - string
    argTypes:
    - Address*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 93
    functionName: address_from_string
    functionSourceFile: /src/dbus-broker/src/dbus/address.c
    functionUses: 1
    functionsReached:
    - strncmp
    - strlen
    - strtoull
    linkageType: ''
    returnType: void
    signature: void address_from_string(Address *address, const char *string)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/dbus-broker/src/dbus/address.c:113,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/address.c:114,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/address.c:119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - address
    argTypes:
    - Address*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 122
    functionName: address_to_string
    functionSourceFile: /src/dbus-broker/src/dbus/address.c
    functionUses: 0
    functionsReached:
    - c_assert
    - snprintf
    linkageType: ''
    returnType: char
    signature: char *address_to_string(Address *address)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/dbus-broker/src/dbus/address.c:142,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/address.c:143,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/address.c:146,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/address.c:146,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/dbus/address.c:147,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/address.c:150,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/dbus/address.c:151,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - address
    - buffer
    - n_buffer
    argTypes:
    - Address*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 154
    functionName: address_write
    functionSourceFile: /src/dbus-broker/src/dbus/address.c
    functionUses: 0
    functionsReached:
    - c_assert
    - strcpy
    - snprintf
    - strlen
    linkageType: ''
    returnType: void
    signature: void address_write(Address *address, char *buffer, size_t n_buffer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/test-queue.c:20,1
    - Dst: IQUEUE_NULL
      Src: /src/dbus-broker/src/dbus/test-queue.c:20,1
    - Dst: iqueue_init
      Src: /src/dbus-broker/src/dbus/test-queue.c:22,1
    - Dst: iqueue_deinit
      Src: /src/dbus-broker/src/dbus/test-queue.c:23,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 19
    functionDepth: 2
    functionLinenumber: 19
    functionLinenumberEnd: 24
    functionName: test_in_setup
    functionSourceFile: /src/dbus-broker/src/dbus/test-queue.c
    functionUses: 0
    functionsReached:
    - _c_cleanup_
    - iqueue_init
    - IQUEUE_NULL
    - iqueue_deinit
    linkageType: ''
    returnType: void
    signature: void test_in_setup(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/test-queue.c:27,1
    - Dst: IQUEUE_NULL
      Src: /src/dbus-broker/src/dbus/test-queue.c:27,1
    - Dst: iqueue_init
      Src: /src/dbus-broker/src/dbus/test-queue.c:30,1
    - Dst: iqueue_get_cursor
      Src: /src/dbus-broker/src/dbus/test-queue.c:47,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:56,1
    - Dst: c_min
      Src: /src/dbus-broker/src/dbus/test-queue.c:58,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/dbus/test-queue.c:62,1
    - Dst: iqueue_pop_line
      Src: /src/dbus-broker/src/dbus/test-queue.c:66,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:67,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:70,1
    - Dst: iqueue_deinit
      Src: /src/dbus-broker/src/dbus/test-queue.c:73,1
    - Dst: iqueue_init
      Src: /src/dbus-broker/src/dbus/test-queue.c:74,1
    - Dst: iqueue_get_cursor
      Src: /src/dbus-broker/src/dbus/test-queue.c:104,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:110,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:111,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/dbus/test-queue.c:113,1
    - Dst: fdlist_new_with_fds
      Src: /src/dbus-broker/src/dbus/test-queue.c:115,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:116,1
    - Dst: iqueue_get_cursor
      Src: /src/dbus-broker/src/dbus/test-queue.c:119,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:125,1
    - Dst: iqueue_set_target
      Src: /src/dbus-broker/src/dbus/test-queue.c:128,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:129,1
    - Dst: iqueue_pop_data
      Src: /src/dbus-broker/src/dbus/test-queue.c:131,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:132,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:133,1
    - Dst: iqueue_set_target
      Src: /src/dbus-broker/src/dbus/test-queue.c:136,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:137,1
    - Dst: iqueue_pop_data
      Src: /src/dbus-broker/src/dbus/test-queue.c:139,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:140,1
    - Dst: iqueue_get_cursor
      Src: /src/dbus-broker/src/dbus/test-queue.c:143,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:149,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:150,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/dbus/test-queue.c:152,1
    - Dst: fdlist_new_with_fds
      Src: /src/dbus-broker/src/dbus/test-queue.c:154,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:155,1
    - Dst: iqueue_pop_data
      Src: /src/dbus-broker/src/dbus/test-queue.c:158,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:159,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:160,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:161,1
    - Dst: fdlist_count
      Src: /src/dbus-broker/src/dbus/test-queue.c:161,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:162,1
    - Dst: fdlist_get
      Src: /src/dbus-broker/src/dbus/test-queue.c:162,1
    - Dst: fdlist_free
      Src: /src/dbus-broker/src/dbus/test-queue.c:163,1
    - Dst: iqueue_set_target
      Src: /src/dbus-broker/src/dbus/test-queue.c:166,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:167,1
    - Dst: iqueue_pop_data
      Src: /src/dbus-broker/src/dbus/test-queue.c:169,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:170,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:171,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:172,1
    - Dst: fdlist_count
      Src: /src/dbus-broker/src/dbus/test-queue.c:172,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:173,1
    - Dst: fdlist_get
      Src: /src/dbus-broker/src/dbus/test-queue.c:173,1
    - Dst: fdlist_free
      Src: /src/dbus-broker/src/dbus/test-queue.c:174,1
    - Dst: iqueue_deinit
      Src: /src/dbus-broker/src/dbus/test-queue.c:177,1
    - Dst: iqueue_init
      Src: /src/dbus-broker/src/dbus/test-queue.c:178,1
    - Dst: iqueue_get_cursor
      Src: /src/dbus-broker/src/dbus/test-queue.c:193,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:199,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:200,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/dbus/test-queue.c:202,1
    - Dst: fdlist_new_with_fds
      Src: /src/dbus-broker/src/dbus/test-queue.c:204,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:205,1
    - Dst: iqueue_set_target
      Src: /src/dbus-broker/src/dbus/test-queue.c:208,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:209,1
    - Dst: iqueue_pop_data
      Src: /src/dbus-broker/src/dbus/test-queue.c:211,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:212,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:213,1
    - Dst: iqueue_set_target
      Src: /src/dbus-broker/src/dbus/test-queue.c:216,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:217,1
    - Dst: iqueue_pop_data
      Src: /src/dbus-broker/src/dbus/test-queue.c:219,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:220,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:221,1
    - Dst: fdlist_count
      Src: /src/dbus-broker/src/dbus/test-queue.c:221,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:222,1
    - Dst: fdlist_get
      Src: /src/dbus-broker/src/dbus/test-queue.c:222,1
    - Dst: fdlist_free
      Src: /src/dbus-broker/src/dbus/test-queue.c:223,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 84
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 26
    functionDepth: 2
    functionLinenumber: 26
    functionLinenumberEnd: 225
    functionName: test_in_special
    functionSourceFile: /src/dbus-broker/src/dbus/test-queue.c
    functionUses: 0
    functionsReached:
    - c_memcpy
    - fdlist_get
    - iqueue_get_cursor
    - IQUEUE_NULL
    - fdlist_count
    - fdlist_free
    - iqueue_init
    - fdlist_new_with_fds
    - iqueue_pop_line
    - c_min
    - iqueue_pop_data
    - _c_cleanup_
    - iqueue_deinit
    - iqueue_set_target
    - c_assert
    linkageType: ''
    returnType: void
    signature: void test_in_special(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/test-queue.c:268,1
    - Dst: IQUEUE_NULL
      Src: /src/dbus-broker/src/dbus/test-queue.c:268,1
    - Dst: iqueue_init
      Src: /src/dbus-broker/src/dbus/test-queue.c:272,1
    - Dst: iqueue_get_cursor
      Src: /src/dbus-broker/src/dbus/test-queue.c:297,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:303,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:304,1
    - Dst: rand
      Src: /src/dbus-broker/src/dbus/test-queue.c:307,1
    - Dst: c_min
      Src: /src/dbus-broker/src/dbus/test-queue.c:307,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/test-queue.c:307,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/dbus/test-queue.c:310,1
    - Dst: iqueue_pop_line
      Src: /src/dbus-broker/src/dbus/test-queue.c:319,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:323,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:324,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/test-queue.c:324,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:325,1
    - Dst: memcmp
      Src: /src/dbus-broker/src/dbus/test-queue.c:325,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/test-queue.c:328,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-queue.c:330,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/dbus/test-queue.c:330,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 227
    functionDepth: 2
    functionLinenumber: 227
    functionLinenumberEnd: 332
    functionName: test_in_lines
    functionSourceFile: /src/dbus-broker/src/dbus/test-queue.c
    functionUses: 0
    functionsReached:
    - c_memcpy
    - iqueue_get_cursor
    - IQUEUE_NULL
    - rand
    - strlen
    - iqueue_init
    - iqueue_pop_line
    - c_min
    - _c_cleanup_
    - c_assert
    - C_ARRAY_SIZE
    - memcmp
    linkageType: ''
    returnType: void
    signature: void test_in_lines(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: srand
      Src: /src/dbus-broker/src/dbus/test-queue.c:335,1
    - Dst: test_in_setup
      Src: /src/dbus-broker/src/dbus/test-queue.c:337,1
    - Dst: test_in_special
      Src: /src/dbus-broker/src/dbus/test-queue.c:338,1
    - Dst: test_in_lines
      Src: /src/dbus-broker/src/dbus/test-queue.c:339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 334
    functionDepth: 3
    functionLinenumber: 334
    functionLinenumberEnd: 342
    functionName: main
    functionSourceFile: /src/dbus-broker/src/dbus/test-queue.c
    functionUses: 0
    functionsReached:
    - test_in_setup
    - test_in_special
    - test_in_lines
    - srand
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/test-sasl.c:11,1
    - Dst: sasl_server_init
      Src: /src/dbus-broker/src/dbus/test-sasl.c:13,1
    - Dst: sasl_server_deinit
      Src: /src/dbus-broker/src/dbus/test-sasl.c:14,1
    - Dst: sasl_server_init
      Src: /src/dbus-broker/src/dbus/test-sasl.c:16,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17
      start: 10
    functionDepth: 1
    functionLinenumber: 10
    functionLinenumberEnd: 17
    functionName: test_server_setup
    functionSourceFile: /src/dbus-broker/src/dbus/test-sasl.c
    functionUses: 0
    functionsReached:
    - _c_cleanup_
    - sasl_server_deinit
    - sasl_server_init
    linkageType: ''
    returnType: void
    signature: void test_server_setup(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/test-sasl.c:20,1
    - Dst: sasl_client_init
      Src: /src/dbus-broker/src/dbus/test-sasl.c:22,1
    - Dst: sasl_client_deinit
      Src: /src/dbus-broker/src/dbus/test-sasl.c:23,1
    - Dst: sasl_client_init
      Src: /src/dbus-broker/src/dbus/test-sasl.c:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 19
    functionDepth: 1
    functionLinenumber: 19
    functionLinenumberEnd: 26
    functionName: test_client_setup
    functionSourceFile: /src/dbus-broker/src/dbus/test-sasl.c
    functionUses: 0
    functionsReached:
    - _c_cleanup_
    - sasl_client_init
    - sasl_client_deinit
    linkageType: ''
    returnType: void
    signature: void test_client_setup(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/test-sasl.c:113,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-sasl.c:119,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/dbus/test-sasl.c:119,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/dbus/test-sasl.c:119,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/dbus/test-sasl.c:121,1
    - Dst: sasl_server_dispatch
      Src: /src/dbus-broker/src/dbus/test-sasl.c:126,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/test-sasl.c:128,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-sasl.c:131,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-sasl.c:134,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/test-sasl.c:134,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-sasl.c:135,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/dbus/test-sasl.c:135,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-sasl.c:137,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-sasl.c:138,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-sasl.c:139,1
    - Dst: sasl_server_is_done
      Src: /src/dbus-broker/src/dbus/test-sasl.c:139,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-sasl.c:142,1
    - Dst: sasl_server_deinit
      Src: /src/dbus-broker/src/dbus/test-sasl.c:143,1
    - Dst: sasl_server_init
      Src: /src/dbus-broker/src/dbus/test-sasl.c:144,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 147
    functionName: test_server_conversations
    functionSourceFile: /src/dbus-broker/src/dbus/test-sasl.c
    functionUses: 0
    functionsReached:
    - sasl_server_dispatch
    - strlen
    - sasl_server_deinit
    - sasl_server_is_done
    - _c_cleanup_
    - sasl_server_init
    - c_assert
    - strcmp
    - C_ARRAY_SIZE
    linkageType: ''
    returnType: void
    signature: void test_server_conversations(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/test-sasl.c:150,1
    - Dst: sasl_client_init
      Src: /src/dbus-broker/src/dbus/test-sasl.c:155,1
    - Dst: sasl_client_dispatch
      Src: /src/dbus-broker/src/dbus/test-sasl.c:157,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-sasl.c:158,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-sasl.c:159,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-sasl.c:160,1
    - Dst: memcmp
      Src: /src/dbus-broker/src/dbus/test-sasl.c:160,1
    - Dst: sasl_client_dispatch
      Src: /src/dbus-broker/src/dbus/test-sasl.c:162,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-sasl.c:163,1
    - Dst: sasl_client_dispatch
      Src: /src/dbus-broker/src/dbus/test-sasl.c:164,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-sasl.c:165,1
    - Dst: sasl_client_dispatch
      Src: /src/dbus-broker/src/dbus/test-sasl.c:166,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-sasl.c:167,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-sasl.c:169,1
    - Dst: sasl_client_is_done
      Src: /src/dbus-broker/src/dbus/test-sasl.c:169,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 170
    functionName: test_client_run
    functionSourceFile: /src/dbus-broker/src/dbus/test-sasl.c
    functionUses: 0
    functionsReached:
    - sasl_client_is_done
    - _c_cleanup_
    - sasl_client_init
    - sasl_client_dispatch
    - c_assert
    - memcmp
    linkageType: ''
    returnType: void
    signature: void test_client_run(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_server_setup
      Src: /src/dbus-broker/src/dbus/test-sasl.c:173,1
    - Dst: test_client_setup
      Src: /src/dbus-broker/src/dbus/test-sasl.c:174,1
    - Dst: test_server_conversations
      Src: /src/dbus-broker/src/dbus/test-sasl.c:175,1
    - Dst: test_client_run
      Src: /src/dbus-broker/src/dbus/test-sasl.c:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 172
    functionDepth: 2
    functionLinenumber: 172
    functionLinenumberEnd: 178
    functionName: main
    functionSourceFile: /src/dbus-broker/src/dbus/test-sasl.c
    functionUses: 0
    functionsReached:
    - test_server_setup
    - test_client_run
    - test_client_setup
    - test_server_conversations
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memchr
      Src: /src/dbus-broker/src/dbus/sasl.c:37,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 6
    argNames:
    - input
    - n_input
    - cmd
    - n_cmd
    - arg
    - n_arg
    argTypes:
    - char*
    - size_t
    - char**
    - size_t*
    - char**
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 51
    functionName: sasl_split
    functionSourceFile: /src/dbus-broker/src/dbus/sasl.c
    functionUses: 0
    functionsReached:
    - memchr
    linkageType: ''
    returnType: void
    signature: "void sasl_split(const char *input, size_t n_input,\n                       const
      char **cmd, size_t *n_cmd,\n                       const char **arg, size_t
      *n_arg)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sasl
    argTypes:
    - SASLClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: sasl_client_init
    functionSourceFile: /src/dbus-broker/src/dbus/sasl.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void sasl_client_init(SASLClient *sasl)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sasl
    argTypes:
    - SASLClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 71
    functionName: sasl_client_deinit
    functionSourceFile: /src/dbus-broker/src/dbus/sasl.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void sasl_client_deinit(SASLClient *sasl)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: sasl_split
      Src: /src/dbus-broker/src/dbus/sasl.c:106,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:123,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/dbus/sasl.c:123,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:135,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/dbus/sasl.c:135,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:137,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:147,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/dbus/sasl.c:147,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/dbus/sasl.c:156,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 43
    argCount: 5
    argNames:
    - sasl
    - input
    - n_input
    - outputp
    - n_outputp
    argTypes:
    - SASLClient*
    - char*
    - size_t
    - char**
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 162
    functionName: sasl_client_dispatch
    functionSourceFile: /src/dbus-broker/src/dbus/sasl.c
    functionUses: 2
    functionsReached:
    - strlen
    - strncmp
    - error_origin
    - sasl_split
    linkageType: ''
    returnType: int
    signature: int sasl_client_dispatch(SASLClient *sasl, const char *input, size_t
      n_input, const char **outputp, size_t *n_outputp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string_to_hex
      Src: /src/dbus-broker/src/dbus/sasl.c:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - sasl
    - uid
    - guid
    argTypes:
    - SASLServer*
    - uid_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 182
    functionName: sasl_server_init
    functionSourceFile: /src/dbus-broker/src/dbus/sasl.c
    functionUses: 3
    functionsReached:
    - string_to_hex
    linkageType: ''
    returnType: void
    signature: void sasl_server_init(SASLServer *sasl, uid_t uid, const char *guid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sasl
    argTypes:
    - SASLServer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionName: sasl_server_deinit
    functionSourceFile: /src/dbus-broker/src/dbus/sasl.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void sasl_server_deinit(SASLServer *sasl)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: C_DECIMAL_MAX
      Src: /src/dbus-broker/src/dbus/sasl.c:195,1
    - Dst: C_DECIMAL_MAX
      Src: /src/dbus-broker/src/dbus/sasl.c:196,1
    - Dst: snprintf
      Src: /src/dbus-broker/src/dbus/sasl.c:206,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/sasl.c:207,1
    - Dst: string_to_hex
      Src: /src/dbus-broker/src/dbus/sasl.c:209,1
    - Dst: memcmp
      Src: /src/dbus-broker/src/dbus/sasl.c:210,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:216,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 5
    argNames:
    - sasl
    - input
    - n_input
    - outputp
    - n_outputp
    argTypes:
    - SASLServer*
    - char*
    - size_t
    - char**
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 223
    functionName: sasl_server_handle_data
    functionSourceFile: /src/dbus-broker/src/dbus/sasl.c
    functionUses: 0
    functionsReached:
    - strlen
    - snprintf
    - c_assert
    - C_DECIMAL_MAX
    - memcmp
    - string_to_hex
    linkageType: ''
    returnType: void
    signature: void sasl_server_handle_data(SASLServer *sasl, const char *input, size_t
      n_input, const char **outputp, size_t *n_outputp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sasl_split
      Src: /src/dbus-broker/src/dbus/sasl.c:229,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:231,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/dbus/sasl.c:231,1
    - Dst: sasl_server_handle_data
      Src: /src/dbus-broker/src/dbus/sasl.c:233,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:236,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:240,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 5
    argNames:
    - sasl
    - input
    - n_input
    - outputp
    - n_outputp
    argTypes:
    - SASLServer*
    - char*
    - size_t
    - char**
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 225
    functionDepth: 2
    functionLinenumber: 225
    functionLinenumberEnd: 243
    functionName: sasl_server_handle_auth
    functionSourceFile: /src/dbus-broker/src/dbus/sasl.c
    functionUses: 0
    functionsReached:
    - strlen
    - sasl_server_handle_data
    - strncmp
    - sasl_split
    linkageType: ''
    returnType: void
    signature: void sasl_server_handle_auth(SASLServer *sasl, const char *input, size_t
      n_input, const char **outputp, size_t *n_outputp)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: sasl_split
      Src: /src/dbus-broker/src/dbus/sasl.c:273,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:285,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/dbus/sasl.c:285,1
    - Dst: sasl_server_handle_auth
      Src: /src/dbus-broker/src/dbus/sasl.c:286,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:287,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/dbus/sasl.c:287,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:289,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:291,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/dbus/sasl.c:291,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:295,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:301,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/dbus/sasl.c:301,1
    - Dst: sasl_server_handle_data
      Src: /src/dbus-broker/src/dbus/sasl.c:302,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:303,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/dbus/sasl.c:303,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:304,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/dbus/sasl.c:304,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:306,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:308,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/dbus/sasl.c:308,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:312,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:319,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/dbus/sasl.c:319,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:321,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:324,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/dbus/sasl.c:324,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:328,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/dbus/sasl.c:328,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:329,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/dbus/sasl.c:329,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:331,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/sasl.c:336,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/dbus/sasl.c:342,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 67
    argCount: 5
    argNames:
    - sasl
    - input
    - n_input
    - outputp
    - n_outputp
    argTypes:
    - SASLServer*
    - char*
    - size_t
    - char**
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 269
    functionDepth: 3
    functionLinenumber: 269
    functionLinenumberEnd: 346
    functionName: sasl_server_dispatch
    functionSourceFile: /src/dbus-broker/src/dbus/sasl.c
    functionUses: 2
    functionsReached:
    - sasl_server_handle_data
    - strlen
    - error_origin
    - strncmp
    - sasl_server_handle_auth
    - sasl_split
    linkageType: ''
    returnType: int
    signature: int sasl_server_dispatch(SASLServer *sasl, const char *input, size_t
      n_input, const char **outputp, size_t *n_outputp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/test-message.c:11,1
    - Dst: message_new_incoming
      Src: /src/dbus-broker/src/dbus/test-message.c:17,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-message.c:18,1
    - Dst: message_new_incoming
      Src: /src/dbus-broker/src/dbus/test-message.c:20,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-message.c:21,1
    - Dst: message_unref
      Src: /src/dbus-broker/src/dbus/test-message.c:23,1
    - Dst: message_unref
      Src: /src/dbus-broker/src/dbus/test-message.c:24,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 10
    functionDepth: 2
    functionLinenumber: 10
    functionLinenumberEnd: 25
    functionName: test_setup
    functionSourceFile: /src/dbus-broker/src/dbus/test-message.c
    functionUses: 0
    functionsReached:
    - c_assert
    - _c_cleanup_
    - message_new_incoming
    - message_unref
    linkageType: ''
    returnType: void
    signature: void test_setup(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: htole32
      Src: /src/dbus-broker/src/dbus/test-message.c:34,1
    - Dst: message_new_incoming
      Src: /src/dbus-broker/src/dbus/test-message.c:35,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-message.c:36,1
    - Dst: message_unref
      Src: /src/dbus-broker/src/dbus/test-message.c:37,1
    - Dst: htole32
      Src: /src/dbus-broker/src/dbus/test-message.c:39,1
    - Dst: message_new_incoming
      Src: /src/dbus-broker/src/dbus/test-message.c:40,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-message.c:41,1
    - Dst: message_unref
      Src: /src/dbus-broker/src/dbus/test-message.c:42,1
    - Dst: htole32
      Src: /src/dbus-broker/src/dbus/test-message.c:44,1
    - Dst: message_new_incoming
      Src: /src/dbus-broker/src/dbus/test-message.c:45,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-message.c:46,1
    - Dst: message_unref
      Src: /src/dbus-broker/src/dbus/test-message.c:47,1
    - Dst: htole32
      Src: /src/dbus-broker/src/dbus/test-message.c:49,1
    - Dst: message_new_incoming
      Src: /src/dbus-broker/src/dbus/test-message.c:50,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-message.c:51,1
    - Dst: htole32
      Src: /src/dbus-broker/src/dbus/test-message.c:53,1
    - Dst: htole32
      Src: /src/dbus-broker/src/dbus/test-message.c:54,1
    - Dst: message_new_incoming
      Src: /src/dbus-broker/src/dbus/test-message.c:55,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-message.c:56,1
    - Dst: message_unref
      Src: /src/dbus-broker/src/dbus/test-message.c:57,1
    - Dst: htole32
      Src: /src/dbus-broker/src/dbus/test-message.c:59,1
    - Dst: htole32
      Src: /src/dbus-broker/src/dbus/test-message.c:60,1
    - Dst: message_new_incoming
      Src: /src/dbus-broker/src/dbus/test-message.c:61,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-message.c:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 27
    functionDepth: 2
    functionLinenumber: 27
    functionLinenumberEnd: 63
    functionName: test_size
    functionSourceFile: /src/dbus-broker/src/dbus/test-message.c
    functionUses: 0
    functionsReached:
    - c_assert
    - message_new_incoming
    - message_unref
    - htole32
    linkageType: ''
    returnType: void
    signature: void test_size(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_setup
      Src: /src/dbus-broker/src/dbus/test-message.c:66,1
    - Dst: test_size
      Src: /src/dbus-broker/src/dbus/test-message.c:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 3
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: main
    functionSourceFile: /src/dbus-broker/src/dbus/test-message.c
    functionUses: 0
    functionsReached:
    - test_size
    - test_setup
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 58
    functionName: IQUEUE_NULL
    functionSourceFile: /src/dbus-broker/src/dbus/queue.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IQUEUE_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: OQUEUE_NULL
    functionSourceFile: /src/dbus-broker/src/dbus/queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OQUEUE_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - iq
    argTypes:
    - IQueue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: iqueue_get_target
    functionSourceFile: /src/dbus-broker/src/dbus/queue.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void *iqueue_get_target(IQueue *iq)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - iq
    argTypes:
    - IQueue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionName: iqueue_is_eof
    functionSourceFile: /src/dbus-broker/src/dbus/queue.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool iqueue_is_eof(IQueue *iq)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: CONNECTION_NULL
    functionSourceFile: /src/dbus-broker/src/dbus/connection.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CONNECTION_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: socket_is_running
      Src: /src/dbus-broker/src/dbus/connection.h:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - connection
    argTypes:
    - Connection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 78
    functionName: connection_is_running
    functionSourceFile: /src/dbus-broker/src/dbus/connection.h
    functionUses: 1
    functionsReached:
    - socket_is_running
    linkageType: ''
    returnType: bool
    signature: bool connection_is_running(Connection *connection)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/message.c:22,1
    - Dst: malloc
      Src: /src/dbus-broker/src/dbus/message.c:27,1
    - Dst: c_align_to
      Src: /src/dbus-broker/src/dbus/message.c:27,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/dbus/message.c:29,1
    - Dst: MESSAGE_INIT
      Src: /src/dbus-broker/src/dbus/message.c:31,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - messagep
    - big_endian
    - n_extra
    argTypes:
    - Message**
    - bool
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 21
    functionDepth: 1
    functionLinenumber: 21
    functionLinenumberEnd: 36
    functionName: message_new
    functionSourceFile: /src/dbus-broker/src/dbus/message.c
    functionUses: 0
    functionsReached:
    - error_origin
    - MESSAGE_INIT
    - _c_cleanup_
    - c_align_to
    - malloc
    linkageType: ''
    returnType: int
    signature: int message_new(Message **messagep, bool big_endian, size_t n_extra)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/message.c:52,1
    - Dst: _c_likely_
      Src: /src/dbus-broker/src/dbus/message.c:56,1
    - Dst: le32toh
      Src: /src/dbus-broker/src/dbus/message.c:57,1
    - Dst: le32toh
      Src: /src/dbus-broker/src/dbus/message.c:58,1
    - Dst: be32toh
      Src: /src/dbus-broker/src/dbus/message.c:60,1
    - Dst: be32toh
      Src: /src/dbus-broker/src/dbus/message.c:61,1
    - Dst: c_align_to
      Src: /src/dbus-broker/src/dbus/message.c:66,1
    - Dst: message_new
      Src: /src/dbus-broker/src/dbus/message.c:70,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/dbus/message.c:72,1
    - Dst: c_align_to
      Src: /src/dbus-broker/src/dbus/message.c:79,1
    - Dst: c_align_to
      Src: /src/dbus-broker/src/dbus/message.c:80,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/dbus/message.c:86,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 2
    argNames:
    - messagep
    - header
    argTypes:
    - Message**
    - MessageHeader
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 91
    functionName: message_new_incoming
    functionSourceFile: /src/dbus-broker/src/dbus/message.c
    functionUses: 4
    functionsReached:
    - c_memcpy
    - message_new
    - le32toh
    - _c_cleanup_
    - _c_likely_
    - error_trace
    - c_align_to
    - be32toh
    linkageType: ''
    returnType: int
    signature: int message_new_incoming(Message **messagep, MessageHeader header)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/message.c:105,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/message.c:110,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/message.c:111,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/message.c:112,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/message.c:114,1
    - Dst: c_align_to
      Src: /src/dbus-broker/src/dbus/message.c:114,1
    - Dst: c_align_to
      Src: /src/dbus-broker/src/dbus/message.c:117,1
    - Dst: c_align_to
      Src: /src/dbus-broker/src/dbus/message.c:119,1
    - Dst: message_new
      Src: /src/dbus-broker/src/dbus/message.c:121,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/dbus/message.c:123,1
    - Dst: c_align_to
      Src: /src/dbus-broker/src/dbus/message.c:131,1
    - Dst: c_align_to
      Src: /src/dbus-broker/src/dbus/message.c:132,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 26
    argCount: 3
    argNames:
    - messagep
    - data
    - n_data
    argTypes:
    - Message**
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 104
    functionDepth: 2
    functionLinenumber: 104
    functionLinenumberEnd: 140
    functionName: message_new_outgoing
    functionSourceFile: /src/dbus-broker/src/dbus/message.c
    functionUses: 3
    functionsReached:
    - message_new
    - _c_cleanup_
    - error_trace
    - c_align_to
    - c_assert
    linkageType: ''
    returnType: int
    signature: int message_new_outgoing(Message **messagep, void *data, size_t n_data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/dbus/message.c:144,1
    - Dst: free
      Src: /src/dbus-broker/src/dbus/message.c:147,1
    - Dst: fdlist_free
      Src: /src/dbus-broker/src/dbus/message.c:148,1
    - Dst: free
      Src: /src/dbus-broker/src/dbus/message.c:149,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - n_refs
    - userdata
    argTypes:
    - unsigned long*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 150
    functionName: message_free
    functionSourceFile: /src/dbus-broker/src/dbus/message.c
    functionUses: 0
    functionsReached:
    - fdlist_free
    - c_container_of
    - free
    linkageType: ''
    returnType: void
    signature: void message_free(_Atomic unsigned long *n_refs, void *userdata)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: C_DVAR_T_INIT
      Src: /src/dbus-broker/src/dbus/message.c:154,1
    - Dst: C_DVAR_T_TUPLE7
      Src: /src/dbus-broker/src/dbus/message.c:155,1
    - Dst: C_DVAR_T_ARRAY
      Src: /src/dbus-broker/src/dbus/message.c:162,1
    - Dst: C_DVAR_T_TUPLE2
      Src: /src/dbus-broker/src/dbus/message.c:163,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/message.c:171,1
    - Dst: c_dvar_begin_read
      Src: /src/dbus-broker/src/dbus/message.c:176,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/dbus/message.c:191,1
    - Dst: c_dvar_more
      Src: /src/dbus-broker/src/dbus/message.c:217,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/dbus/message.c:218,1
    - Dst: c_dvar_skip
      Src: /src/dbus-broker/src/dbus/message.c:221,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/dbus/message.c:235,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/dbus/message.c:237,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/dbus/message.c:243,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/dbus/message.c:245,1
    - Dst: dbus_validate_interface
      Src: /src/dbus-broker/src/dbus/message.c:248,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/message.c:248,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/dbus/message.c:254,1
    - Dst: dbus_validate_member
      Src: /src/dbus-broker/src/dbus/message.c:256,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/message.c:256,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/dbus/message.c:262,1
    - Dst: dbus_validate_error_name
      Src: /src/dbus-broker/src/dbus/message.c:264,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/message.c:264,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/dbus/message.c:270,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/dbus/message.c:278,1
    - Dst: dbus_validate_name
      Src: /src/dbus-broker/src/dbus/message.c:280,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/message.c:280,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/dbus/message.c:286,1
    - Dst: dbus_validate_name
      Src: /src/dbus-broker/src/dbus/message.c:288,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/message.c:288,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/dbus/message.c:296,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/dbus/message.c:300,1
    - Dst: fdlist_count
      Src: /src/dbus-broker/src/dbus/message.c:302,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/dbus/message.c:308,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/dbus/message.c:354,1
    - Dst: c_dvar_end_read
      Src: /src/dbus-broker/src/dbus/message.c:356,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/dbus/message.c:360,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 99
    argCount: 2
    argNames:
    - message
    - metadata
    argTypes:
    - Message*
    - MessageMetadata*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 152
    functionDepth: 2
    functionLinenumber: 152
    functionLinenumberEnd: 363
    functionName: message_parse_header
    functionSourceFile: /src/dbus-broker/src/dbus/message.c
    functionUses: 0
    functionsReached:
    - error_origin
    - C_DVAR_T_INIT
    - dbus_validate_member
    - fdlist_count
    - _c_cleanup_
    - C_DVAR_T_ARRAY
    - C_DVAR_T_TUPLE7
    - strlen
    - c_dvar_end_read
    - c_dvar_read
    - c_dvar_skip
    - dbus_validate_name
    - c_dvar_more
    - dbus_validate_error_name
    - dbus_validate_interface
    - c_dvar_begin_read
    - C_DVAR_T_TUPLE2
    - strcmp
    - error_fold
    linkageType: ''
    returnType: int
    signature: int message_parse_header(Message *message, MessageMetadata *metadata)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/message.c:366,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/message.c:377,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/message.c:378,1
    - Dst: alloca
      Src: /src/dbus-broker/src/dbus/message.c:379,1
    - Dst: c_dvar_type_new_from_signature
      Src: /src/dbus-broker/src/dbus/message.c:384,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/dbus/message.c:386,1
    - Dst: c_dvar_begin_read
      Src: /src/dbus-broker/src/dbus/message.c:397,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/dbus/message.c:403,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/dbus/message.c:405,1
    - Dst: c_dvar_skip
      Src: /src/dbus-broker/src/dbus/message.c:412,1
    - Dst: c_dvar_end_read
      Src: /src/dbus-broker/src/dbus/message.c:417,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/dbus/message.c:419,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 33
    argCount: 2
    argNames:
    - message
    - metadata
    argTypes:
    - Message*
    - MessageMetadata*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 365
    functionDepth: 1
    functionLinenumber: 365
    functionLinenumberEnd: 422
    functionName: message_parse_body
    functionSourceFile: /src/dbus-broker/src/dbus/message.c
    functionUses: 0
    functionsReached:
    - strlen
    - alloca
    - c_dvar_end_read
    - c_dvar_type_new_from_signature
    - c_dvar_read
    - error_origin
    - _c_cleanup_
    - c_dvar_skip
    - c_dvar_begin_read
    - c_assert
    - C_ARRAY_SIZE
    linkageType: ''
    returnType: int
    signature: int message_parse_body(Message *message, MessageMetadata *metadata)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: message_parse_header
      Src: /src/dbus-broker/src/dbus/message.c:450,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/dbus/message.c:452,1
    - Dst: message_parse_body
      Src: /src/dbus-broker/src/dbus/message.c:468,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/dbus/message.c:470,1
    - Dst: fdlist_truncate
      Src: /src/dbus-broker/src/dbus/message.c:481,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 1
    argNames:
    - message
    argTypes:
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 439
    functionDepth: 3
    functionLinenumber: 439
    functionLinenumberEnd: 485
    functionName: message_parse_metadata
    functionSourceFile: /src/dbus-broker/src/dbus/message.c
    functionUses: 3
    functionsReached:
    - message_parse_body
    - error_trace
    - fdlist_truncate
    - message_parse_header
    linkageType: ''
    returnType: int
    signature: int message_parse_metadata(Message *message)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/message.c:518,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/message.c:519,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/message.c:520,1
    - Dst: address_to_string
      Src: /src/dbus-broker/src/dbus/message.c:526,1
    - Dst: ADDRESS_INIT_ID
      Src: /src/dbus-broker/src/dbus/message.c:526,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/message.c:551,1
    - Dst: c_align_to
      Src: /src/dbus-broker/src/dbus/message.c:553,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/message.c:564,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/message.c:565,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/message.c:578,1
    - Dst: c_align_to
      Src: /src/dbus-broker/src/dbus/message.c:579,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/message.c:582,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/message.c:583,1
    - Dst: c_align_to
      Src: /src/dbus-broker/src/dbus/message.c:586,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/dbus/message.c:619,1
    - Dst: htobe32
      Src: /src/dbus-broker/src/dbus/message.c:619,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/dbus/message.c:621,1
    - Dst: htole32
      Src: /src/dbus-broker/src/dbus/message.c:621,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/dbus/message.c:622,1
    - Dst: c_memset
      Src: /src/dbus-broker/src/dbus/message.c:623,1
    - Dst: c_align_to
      Src: /src/dbus-broker/src/dbus/message.c:633,1
    - Dst: htobe32
      Src: /src/dbus-broker/src/dbus/message.c:636,1
    - Dst: htole32
      Src: /src/dbus-broker/src/dbus/message.c:638,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 39
    argCount: 2
    argNames:
    - message
    - sender_id
    argTypes:
    - Message*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 639
      start: 508
    functionDepth: 1
    functionLinenumber: 508
    functionLinenumberEnd: 639
    functionName: message_stitch_sender
    functionSourceFile: /src/dbus-broker/src/dbus/message.c
    functionUses: 2
    functionsReached:
    - c_memcpy
    - strlen
    - htobe32
    - c_memset
    - address_to_string
    - c_align_to
    - c_assert
    - ADDRESS_INIT_ID
    - htole32
    linkageType: ''
    returnType: void
    signature: void message_stitch_sender(Message *message, uint64_t sender_id)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: log_appendf
      Src: /src/dbus-broker/src/dbus/message.c:650,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/dbus/message.c:662,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/dbus/message.c:672,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/dbus/message.c:682,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/dbus/message.c:688,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/dbus/message.c:696,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - message
    - log
    argTypes:
    - Message*
    - Log*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 649
    functionDepth: 1
    functionLinenumber: 649
    functionLinenumberEnd: 698
    functionName: message_log_append
    functionSourceFile: /src/dbus-broker/src/dbus/message.c
    functionUses: 0
    functionsReached:
    - log_appendf
    linkageType: ''
    returnType: void
    signature: void message_log_append(Message *message, Log *log)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/test-socket.c:15,1
    - Dst: SOCKET_NULL
      Src: /src/dbus-broker/src/dbus/test-socket.c:15,1
    - Dst: SOCKET_NULL
      Src: /src/dbus-broker/src/dbus/test-socket.c:15,1
    - Dst: socket_init
      Src: /src/dbus-broker/src/dbus/test-socket.c:17,1
    - Dst: socket_init
      Src: /src/dbus-broker/src/dbus/test-socket.c:18,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19
      start: 14
    functionDepth: 2
    functionLinenumber: 14
    functionLinenumberEnd: 19
    functionName: test_setup
    functionSourceFile: /src/dbus-broker/src/dbus/test-socket.c
    functionUses: 1
    functionsReached:
    - _c_cleanup_
    - socket_init
    - SOCKET_NULL
    linkageType: ''
    returnType: void
    signature: void test_setup(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/test-socket.c:22,1
    - Dst: SOCKET_NULL
      Src: /src/dbus-broker/src/dbus/test-socket.c:22,1
    - Dst: SOCKET_NULL
      Src: /src/dbus-broker/src/dbus/test-socket.c:22,1
    - Dst: socketpair
      Src: /src/dbus-broker/src/dbus/test-socket.c:27,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:28,1
    - Dst: socket_init
      Src: /src/dbus-broker/src/dbus/test-socket.c:30,1
    - Dst: socket_init
      Src: /src/dbus-broker/src/dbus/test-socket.c:31,1
    - Dst: socket_dequeue_line
      Src: /src/dbus-broker/src/dbus/test-socket.c:33,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:34,1
    - Dst: socket_queue_line
      Src: /src/dbus-broker/src/dbus/test-socket.c:36,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/test-socket.c:36,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:37,1
    - Dst: socket_queue_line
      Src: /src/dbus-broker/src/dbus/test-socket.c:39,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/test-socket.c:39,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:40,1
    - Dst: socket_dispatch
      Src: /src/dbus-broker/src/dbus/test-socket.c:42,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:43,1
    - Dst: socket_dispatch
      Src: /src/dbus-broker/src/dbus/test-socket.c:44,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:45,1
    - Dst: socket_dequeue_line
      Src: /src/dbus-broker/src/dbus/test-socket.c:47,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:48,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:49,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/test-socket.c:49,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:50,1
    - Dst: memcmp
      Src: /src/dbus-broker/src/dbus/test-socket.c:50,1
    - Dst: socket_dequeue_line
      Src: /src/dbus-broker/src/dbus/test-socket.c:52,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:53,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:54,1
    - Dst: strlen
      Src: /src/dbus-broker/src/dbus/test-socket.c:54,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:55,1
    - Dst: memcmp
      Src: /src/dbus-broker/src/dbus/test-socket.c:55,1
    - Dst: socket_dequeue_line
      Src: /src/dbus-broker/src/dbus/test-socket.c:57,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:58,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 21
    functionDepth: 8
    functionLinenumber: 21
    functionLinenumberEnd: 59
    functionName: test_line
    functionSourceFile: /src/dbus-broker/src/dbus/test-socket.c
    functionUses: 0
    functionsReached:
    - socketpair
    - strlen
    - SOCKET_NULL
    - socket_init
    - socket_dispatch
    - socket_dequeue_line
    - _c_cleanup_
    - c_assert
    - socket_queue_line
    - memcmp
    linkageType: ''
    returnType: void
    signature: void test_line(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/test-socket.c:62,1
    - Dst: SOCKET_NULL
      Src: /src/dbus-broker/src/dbus/test-socket.c:62,1
    - Dst: SOCKET_NULL
      Src: /src/dbus-broker/src/dbus/test-socket.c:62,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/dbus/test-socket.c:63,1
    - Dst: socketpair
      Src: /src/dbus-broker/src/dbus/test-socket.c:69,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:70,1
    - Dst: socket_init
      Src: /src/dbus-broker/src/dbus/test-socket.c:72,1
    - Dst: socket_init
      Src: /src/dbus-broker/src/dbus/test-socket.c:73,1
    - Dst: socket_dequeue
      Src: /src/dbus-broker/src/dbus/test-socket.c:75,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:76,1
    - Dst: message_new_incoming
      Src: /src/dbus-broker/src/dbus/test-socket.c:78,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:79,1
    - Dst: socket_queue
      Src: /src/dbus-broker/src/dbus/test-socket.c:81,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:82,1
    - Dst: socket_dispatch
      Src: /src/dbus-broker/src/dbus/test-socket.c:84,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:85,1
    - Dst: socket_dispatch
      Src: /src/dbus-broker/src/dbus/test-socket.c:86,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:87,1
    - Dst: socket_dequeue
      Src: /src/dbus-broker/src/dbus/test-socket.c:89,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:90,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-socket.c:92,1
    - Dst: memcmp
      Src: /src/dbus-broker/src/dbus/test-socket.c:92,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 61
    functionDepth: 8
    functionLinenumber: 61
    functionLinenumberEnd: 93
    functionName: test_message
    functionSourceFile: /src/dbus-broker/src/dbus/test-socket.c
    functionUses: 0
    functionsReached:
    - message_new_incoming
    - socketpair
    - socket_dequeue
    - SOCKET_NULL
    - socket_queue
    - socket_init
    - socket_dispatch
    - _c_cleanup_
    - c_assert
    - memcmp
    linkageType: ''
    returnType: void
    signature: void test_message(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_setup
      Src: /src/dbus-broker/src/dbus/test-socket.c:96,1
    - Dst: test_line
      Src: /src/dbus-broker/src/dbus/test-socket.c:97,1
    - Dst: test_message
      Src: /src/dbus-broker/src/dbus/test-socket.c:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 95
    functionDepth: 9
    functionLinenumber: 95
    functionLinenumberEnd: 100
    functionName: main
    functionSourceFile: /src/dbus-broker/src/dbus/test-socket.c
    functionUses: 0
    functionsReached:
    - test_message
    - test_line
    - test_setup
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: address_init_from_id
      Src: /src/dbus-broker/src/dbus/test-address.c:13,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-address.c:14,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-address.c:15,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/dbus/test-address.c:15,1
    - Dst: address_to_string
      Src: /src/dbus-broker/src/dbus/test-address.c:15,1
    - Dst: address_init_from_id
      Src: /src/dbus-broker/src/dbus/test-address.c:17,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-address.c:18,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-address.c:19,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/dbus/test-address.c:19,1
    - Dst: address_to_string
      Src: /src/dbus-broker/src/dbus/test-address.c:19,1
    - Dst: address_from_string
      Src: /src/dbus-broker/src/dbus/test-address.c:21,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-address.c:22,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-address.c:23,1
    - Dst: address_from_string
      Src: /src/dbus-broker/src/dbus/test-address.c:26,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-address.c:27,1
    - Dst: address_from_string
      Src: /src/dbus-broker/src/dbus/test-address.c:30,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-address.c:31,1
    - Dst: address_from_string
      Src: /src/dbus-broker/src/dbus/test-address.c:34,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-address.c:35,1
    - Dst: address_from_string
      Src: /src/dbus-broker/src/dbus/test-address.c:38,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-address.c:39,1
    - Dst: address_from_string
      Src: /src/dbus-broker/src/dbus/test-address.c:42,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-address.c:43,1
    - Dst: address_from_string
      Src: /src/dbus-broker/src/dbus/test-address.c:46,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/dbus/test-address.c:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 10
    functionDepth: 2
    functionLinenumber: 10
    functionLinenumberEnd: 48
    functionName: test_basic
    functionSourceFile: /src/dbus-broker/src/dbus/test-address.c
    functionUses: 0
    functionsReached:
    - address_from_string
    - address_init_from_id
    - address_to_string
    - c_assert
    - strcmp
    linkageType: ''
    returnType: void
    signature: void test_basic(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_basic
      Src: /src/dbus-broker/src/dbus/test-address.c:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: main
    functionSourceFile: /src/dbus-broker/src/dbus/test-address.c
    functionUses: 0
    functionsReached:
    - test_basic
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 64
    functionName: SOCKET_NULL
    functionSourceFile: /src/dbus-broker/src/dbus/socket.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SOCKET_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - socket
    argTypes:
    - Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 89
    functionName: socket_is_running
    functionSourceFile: /src/dbus-broker/src/dbus/socket.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool socket_is_running(Socket *socket)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: wait
      Src: /src/dbus-broker/src/util/test-sockopt.c:19,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:20,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:21,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:22,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:23,1
    - Dst: WIFEXITED
      Src: /src/dbus-broker/src/util/test-sockopt.c:23,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:24,1
    - Dst: WEXITSTATUS
      Src: /src/dbus-broker/src/util/test-sockopt.c:24,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - pid_expected
    argTypes:
    - pid_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 15
    functionDepth: 0
    functionLinenumber: 15
    functionLinenumberEnd: 25
    functionName: wait_and_verify
    functionSourceFile: /src/dbus-broker/src/util/test-sockopt.c
    functionUses: 0
    functionsReached:
    - c_assert
    - WEXITSTATUS
    - wait
    - WIFEXITED
    linkageType: ''
    returnType: void
    signature: void wait_and_verify(pid_t pid_expected)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bind
      Src: /src/dbus-broker/src/util/test-sockopt.c:31,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:32,1
    - Dst: listen
      Src: /src/dbus-broker/src/util/test-sockopt.c:34,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - fd
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 36
    functionName: create_server
    functionSourceFile: /src/dbus-broker/src/util/test-sockopt.c
    functionUses: 0
    functionsReached:
    - bind
    - listen
    - c_assert
    linkageType: ''
    returnType: void
    signature: void create_server(int fd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-sockopt.c:43,1
    - Dst: socket
      Src: /src/dbus-broker/src/util/test-sockopt.c:46,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:47,1
    - Dst: connect
      Src: /src/dbus-broker/src/util/test-sockopt.c:49,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - fdp
    - address
    - n_address
    argTypes:
    - int*
    - struct sockaddr_un*
    - socklen_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 54
    functionName: create_client
    functionSourceFile: /src/dbus-broker/src/util/test-sockopt.c
    functionUses: 0
    functionsReached:
    - c_assert
    - _c_cleanup_
    - connect
    - socket
    linkageType: ''
    returnType: void
    signature: "void create_client(\n        int *fdp,\n        struct sockaddr_un
      *address,\n        socklen_t n_address\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-sockopt.c:62,1
    - Dst: create_client
      Src: /src/dbus-broker/src/util/test-sockopt.c:68,1
    - Dst: getsockopt
      Src: /src/dbus-broker/src/util/test-sockopt.c:73,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:74,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:76,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:77,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:78,1
    - Dst: sockopt_get_peerpidfd
      Src: /src/dbus-broker/src/util/test-sockopt.c:82,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:85,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:87,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:88,1
    - Dst: proc_resolve_pidfd
      Src: /src/dbus-broker/src/util/test-sockopt.c:90,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:91,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:92,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:94,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 4
    argNames:
    - address
    - n_address
    - pid_server
    - stale
    argTypes:
    - struct sockaddr_un*
    - socklen_t
    - pid_t
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 97
    functionName: test_peerpidfd_client
    functionSourceFile: /src/dbus-broker/src/util/test-sockopt.c
    functionUses: 0
    functionsReached:
    - getsockopt
    - _c_cleanup_
    - sockopt_get_peerpidfd
    - proc_resolve_pidfd
    - c_assert
    - create_client
    linkageType: ''
    returnType: void
    signature: "void test_peerpidfd_client(\n        struct sockaddr_un *address,\n
      \       socklen_t n_address,\n        pid_t pid_server,\n        bool stale\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-sockopt.c:100,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-sockopt.c:101,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-sockopt.c:102,1
    - Dst: pipe2
      Src: /src/dbus-broker/src/util/test-sockopt.c:112,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:113,1
    - Dst: pipe2
      Src: /src/dbus-broker/src/util/test-sockopt.c:117,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:118,1
    - Dst: socket
      Src: /src/dbus-broker/src/util/test-sockopt.c:124,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:125,1
    - Dst: fork
      Src: /src/dbus-broker/src/util/test-sockopt.c:136,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:137,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/test-sockopt.c:139,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/test-sockopt.c:140,1
    - Dst: create_server
      Src: /src/dbus-broker/src/util/test-sockopt.c:142,1
    - Dst: write
      Src: /src/dbus-broker/src/util/test-sockopt.c:145,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:146,1
    - Dst: read
      Src: /src/dbus-broker/src/util/test-sockopt.c:149,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:150,1
    - Dst: _exit
      Src: /src/dbus-broker/src/util/test-sockopt.c:152,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/test-sockopt.c:155,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/test-sockopt.c:156,1
    - Dst: read
      Src: /src/dbus-broker/src/util/test-sockopt.c:160,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:161,1
    - Dst: getsockname
      Src: /src/dbus-broker/src/util/test-sockopt.c:164,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:165,1
    - Dst: fork
      Src: /src/dbus-broker/src/util/test-sockopt.c:172,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:173,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/test-sockopt.c:175,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/test-sockopt.c:176,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/test-sockopt.c:177,1
    - Dst: test_peerpidfd_client
      Src: /src/dbus-broker/src/util/test-sockopt.c:179,1
    - Dst: _exit
      Src: /src/dbus-broker/src/util/test-sockopt.c:180,1
    - Dst: wait_and_verify
      Src: /src/dbus-broker/src/util/test-sockopt.c:183,1
    - Dst: write
      Src: /src/dbus-broker/src/util/test-sockopt.c:187,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:188,1
    - Dst: wait_and_verify
      Src: /src/dbus-broker/src/util/test-sockopt.c:190,1
    - Dst: fork
      Src: /src/dbus-broker/src/util/test-sockopt.c:197,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-sockopt.c:198,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/test-sockopt.c:200,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/test-sockopt.c:201,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/test-sockopt.c:202,1
    - Dst: test_peerpidfd_client
      Src: /src/dbus-broker/src/util/test-sockopt.c:204,1
    - Dst: _exit
      Src: /src/dbus-broker/src/util/test-sockopt.c:205,1
    - Dst: wait_and_verify
      Src: /src/dbus-broker/src/util/test-sockopt.c:208,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 56
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 99
    functionDepth: 2
    functionLinenumber: 99
    functionLinenumberEnd: 209
    functionName: test_peerpidfd
    functionSourceFile: /src/dbus-broker/src/util/test-sockopt.c
    functionUses: 0
    functionsReached:
    - c_close
    - getsockname
    - pipe2
    - fork
    - socket
    - create_server
    - read
    - _c_cleanup_
    - write
    - _exit
    - c_assert
    - wait_and_verify
    - test_peerpidfd_client
    linkageType: ''
    returnType: void
    signature: void test_peerpidfd(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_peerpidfd
      Src: /src/dbus-broker/src/util/test-sockopt.c:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 211
    functionDepth: 3
    functionLinenumber: 211
    functionLinenumberEnd: 214
    functionName: main
    functionSourceFile: /src/dbus-broker/src/util/test-sockopt.c
    functionUses: 0
    functionsReached:
    - test_peerpidfd
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/dbus-broker/src/util/log.h:78,1
    - Dst: log_vcommitf
      Src: /src/dbus-broker/src/util/log.h:79,1
    - Dst: va_end
      Src: /src/dbus-broker/src/util/log.h:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - log
    - format
    argTypes:
    - Log*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 83
    functionName: log_commitf
    functionSourceFile: /src/dbus-broker/src/util/log.h
    functionUses: 10
    functionsReached:
    - log_vcommitf
    - va_end
    - va_start
    linkageType: ''
    returnType: int
    signature: int log_commitf(Log *log, const char *format, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: log_commitf
      Src: /src/dbus-broker/src/util/log.h:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - log
    argTypes:
    - Log*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 2
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: log_commit_silent
    functionSourceFile: /src/dbus-broker/src/util/log.h
    functionUses: 0
    functionsReached:
    - log_commitf
    linkageType: ''
    returnType: int
    signature: int log_commit_silent(Log *log)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: log_append
      Src: /src/dbus-broker/src/util/log.h:90,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/log.h:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - log
    - string
    argTypes:
    - Log*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 91
    functionName: log_appends
    functionSourceFile: /src/dbus-broker/src/util/log.h
    functionUses: 0
    functionsReached:
    - strlen
    - log_append
    linkageType: ''
    returnType: void
    signature: void log_appends(Log *log, const char *string)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/dbus-broker/src/util/log.h:96,1
    - Dst: log_vappendf
      Src: /src/dbus-broker/src/util/log.h:97,1
    - Dst: va_end
      Src: /src/dbus-broker/src/util/log.h:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - log
    - format
    argTypes:
    - Log*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 99
    functionName: log_appendf
    functionSourceFile: /src/dbus-broker/src/util/log.h
    functionUses: 12
    functionsReached:
    - va_end
    - va_start
    - log_vappendf
    linkageType: ''
    returnType: void
    signature: void log_appendf(Log *log, const char *format, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _log
    - ','
    - _level
    - ','
    - _r
    - ','
    - _id
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: log_append_here
    functionSourceFile: /src/dbus-broker/src/util/log.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: log_append_here(_log, _level, _r, _id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: METRICS_INIT
      Src: /src/dbus-broker/src/util/metrics.c:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - metrics
    - id
    argTypes:
    - Metrics*
    - clockid_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: metrics_init
    functionSourceFile: /src/dbus-broker/src/util/metrics.c
    functionUses: 0
    functionsReached:
    - METRICS_INIT
    linkageType: ''
    returnType: void
    signature: void metrics_init(Metrics *metrics, clockid_t id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/metrics.c:29,1
    - Dst: metrics_init
      Src: /src/dbus-broker/src/util/metrics.c:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - metrics
    argTypes:
    - Metrics*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 2
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: metrics_deinit
    functionSourceFile: /src/dbus-broker/src/util/metrics.c
    functionUses: 0
    functionsReached:
    - c_assert
    - metrics_init
    linkageType: ''
    returnType: void
    signature: void metrics_deinit(Metrics *metrics)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clock_gettime
      Src: /src/dbus-broker/src/util/metrics.c:44,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/metrics.c:45,1
    - Dst: UINT64_C
      Src: /src/dbus-broker/src/util/metrics.c:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - metrics
    argTypes:
    - Metrics*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 48
    functionName: metrics_get_time
    functionSourceFile: /src/dbus-broker/src/util/metrics.c
    functionUses: 0
    functionsReached:
    - c_assert
    - UINT64_C
    - clock_gettime
    linkageType: ''
    returnType: uint64_t
    signature: uint64_t metrics_get_time(Metrics *metrics)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: metrics_get_time
      Src: /src/dbus-broker/src/util/metrics.c:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - metrics
    - timestamp
    argTypes:
    - Metrics*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 75
    functionName: metrics_sample_add
    functionSourceFile: /src/dbus-broker/src/util/metrics.c
    functionUses: 0
    functionsReached:
    - metrics_get_time
    linkageType: ''
    returnType: void
    signature: void metrics_sample_add(Metrics *metrics, uint64_t timestamp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/metrics.c:85,1
    - Dst: metrics_get_time
      Src: /src/dbus-broker/src/util/metrics.c:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - metrics
    argTypes:
    - Metrics*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionName: metrics_sample_start
    functionSourceFile: /src/dbus-broker/src/util/metrics.c
    functionUses: 2
    functionsReached:
    - c_assert
    - metrics_get_time
    linkageType: ''
    returnType: void
    signature: void metrics_sample_start(Metrics *metrics)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/metrics.c:96,1
    - Dst: metrics_sample_add
      Src: /src/dbus-broker/src/util/metrics.c:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - metrics
    argTypes:
    - Metrics*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 101
    functionName: metrics_sample_end
    functionSourceFile: /src/dbus-broker/src/util/metrics.c
    functionUses: 2
    functionsReached:
    - c_assert
    - metrics_sample_add
    linkageType: ''
    returnType: void
    signature: void metrics_sample_end(Metrics *metrics)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sqrt
      Src: /src/dbus-broker/src/util/metrics.c:120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - metrics
    argTypes:
    - Metrics*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 121
    functionName: metrics_read_standard_deviation
    functionSourceFile: /src/dbus-broker/src/util/metrics.c
    functionUses: 6
    functionsReached:
    - sqrt
    linkageType: ''
    returnType: double
    signature: double metrics_read_standard_deviation(Metrics *metrics)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17
      start: 15
    functionDepth: 0
    functionLinenumber: 15
    functionLinenumberEnd: 17
    functionName: bus_selinux_is_enabled
    functionSourceFile: /src/dbus-broker/src/util/selinux-fallback.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool bus_selinux_is_enabled(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 21
    functionName: bus_selinux_is_enforcing
    functionSourceFile: /src/dbus-broker/src/util/selinux-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool bus_selinux_is_enforcing(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionName: bus_selinux_policy_root
    functionSourceFile: /src/dbus-broker/src/util/selinux-fallback.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *bus_selinux_policy_root(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - registryp
    - fallback_context
    argTypes:
    - BusSELinuxRegistry**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: bus_selinux_registry_new
    functionSourceFile: /src/dbus-broker/src/util/selinux-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int bus_selinux_registry_new(BusSELinuxRegistry **registryp, const
      char *fallback_context)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - registry
    argTypes:
    - BusSELinuxRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: bus_selinux_registry_ref
    functionSourceFile: /src/dbus-broker/src/util/selinux-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusSELinuxRegistry
    signature: BusSELinuxRegistry *bus_selinux_registry_ref(BusSELinuxRegistry *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - registry
    argTypes:
    - BusSELinuxRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 38
    functionName: bus_selinux_registry_unref
    functionSourceFile: /src/dbus-broker/src/util/selinux-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusSELinuxRegistry
    signature: BusSELinuxRegistry *bus_selinux_registry_unref(BusSELinuxRegistry *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - registry
    - name
    - context
    argTypes:
    - BusSELinuxRegistry*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 42
    functionName: bus_selinux_registry_add_name
    functionSourceFile: /src/dbus-broker/src/util/selinux-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int bus_selinux_registry_add_name(BusSELinuxRegistry *registry, const
      char *name, const char *context)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - registry
    - owner_context
    - name
    argTypes:
    - BusSELinuxRegistry*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: bus_selinux_check_own
    functionSourceFile: /src/dbus-broker/src/util/selinux-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int bus_selinux_check_own(BusSELinuxRegistry *registry,\n                          const
      char *owner_context,\n                          const char *name)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - registry
    - context_sender
    - context_receiver
    argTypes:
    - BusSELinuxRegistry*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 54
    functionName: bus_selinux_check_send
    functionSourceFile: /src/dbus-broker/src/util/selinux-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int bus_selinux_check_send(BusSELinuxRegistry *registry,\n                           const
      char *context_sender,\n                           const char *context_receiver)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - log
    argTypes:
    - Log*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: bus_selinux_init_global
    functionSourceFile: /src/dbus-broker/src/util/selinux-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int bus_selinux_init_global(Log *log)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 62
    functionName: bus_selinux_deinit_global
    functionSourceFile: /src/dbus-broker/src/util/selinux-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void bus_selinux_deinit_global(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: user_registry_init
      Src: /src/dbus-broker/src/util/test-user.c:15,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:16,1
    - Dst: user_registry_ref_user
      Src: /src/dbus-broker/src/util/test-user.c:18,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:19,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:20,1
    - Dst: user_registry_ref_user
      Src: /src/dbus-broker/src/util/test-user.c:22,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:23,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:24,1
    - Dst: user_registry_ref_user
      Src: /src/dbus-broker/src/util/test-user.c:26,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:27,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:28,1
    - Dst: user_unref
      Src: /src/dbus-broker/src/util/test-user.c:30,1
    - Dst: user_unref
      Src: /src/dbus-broker/src/util/test-user.c:31,1
    - Dst: user_unref
      Src: /src/dbus-broker/src/util/test-user.c:32,1
    - Dst: user_registry_deinit
      Src: /src/dbus-broker/src/util/test-user.c:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 10
    functionDepth: 1
    functionLinenumber: 10
    functionLinenumberEnd: 34
    functionName: test_setup
    functionSourceFile: /src/dbus-broker/src/util/test-user.c
    functionUses: 2
    functionsReached:
    - user_registry_init
    - user_registry_ref_user
    - user_unref
    - c_assert
    - user_registry_deinit
    linkageType: ''
    returnType: void
    signature: void test_setup(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: user_registry_init
      Src: /src/dbus-broker/src/util/test-user.c:42,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:43,1
    - Dst: user_registry_ref_user
      Src: /src/dbus-broker/src/util/test-user.c:45,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:46,1
    - Dst: user_registry_ref_user
      Src: /src/dbus-broker/src/util/test-user.c:48,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:49,1
    - Dst: user_registry_ref_user
      Src: /src/dbus-broker/src/util/test-user.c:51,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:52,1
    - Dst: user_charge_init
      Src: /src/dbus-broker/src/util/test-user.c:54,1
    - Dst: user_charge_init
      Src: /src/dbus-broker/src/util/test-user.c:55,1
    - Dst: user_charge_init
      Src: /src/dbus-broker/src/util/test-user.c:56,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/util/test-user.c:59,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:60,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/util/test-user.c:61,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:62,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/util/test-user.c:63,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:64,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/util/test-user.c:67,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:68,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/util/test-user.c:69,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:70,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/util/test-user.c:73,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/util/test-user.c:74,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:75,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/util/test-user.c:76,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:77,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/util/test-user.c:80,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:81,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/util/test-user.c:82,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:83,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/util/test-user.c:85,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/util/test-user.c:86,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/util/test-user.c:87,1
    - Dst: user_unref
      Src: /src/dbus-broker/src/util/test-user.c:88,1
    - Dst: user_unref
      Src: /src/dbus-broker/src/util/test-user.c:89,1
    - Dst: user_unref
      Src: /src/dbus-broker/src/util/test-user.c:90,1
    - Dst: user_registry_deinit
      Src: /src/dbus-broker/src/util/test-user.c:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 38
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 92
    functionName: test_quota
    functionSourceFile: /src/dbus-broker/src/util/test-user.c
    functionUses: 0
    functionsReached:
    - user_registry_init
    - user_registry_ref_user
    - user_charge_init
    - user_unref
    - c_assert
    - user_charge_deinit
    - user_charge
    - user_registry_deinit
    linkageType: ''
    returnType: void
    signature: void test_quota(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: user_registry_init
      Src: /src/dbus-broker/src/util/test-user.c:100,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:101,1
    - Dst: user_registry_ref_user
      Src: /src/dbus-broker/src/util/test-user.c:103,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:104,1
    - Dst: user_registry_ref_user
      Src: /src/dbus-broker/src/util/test-user.c:106,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:107,1
    - Dst: user_charge_init
      Src: /src/dbus-broker/src/util/test-user.c:109,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/util/test-user.c:112,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:113,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/util/test-user.c:114,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:115,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/util/test-user.c:116,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:117,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/util/test-user.c:118,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:119,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/util/test-user.c:120,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:121,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/util/test-user.c:122,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-user.c:123,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/util/test-user.c:125,1
    - Dst: user_unref
      Src: /src/dbus-broker/src/util/test-user.c:126,1
    - Dst: user_unref
      Src: /src/dbus-broker/src/util/test-user.c:127,1
    - Dst: user_registry_deinit
      Src: /src/dbus-broker/src/util/test-user.c:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 129
    functionName: test_overflow
    functionSourceFile: /src/dbus-broker/src/util/test-user.c
    functionUses: 0
    functionsReached:
    - user_registry_init
    - user_registry_ref_user
    - user_charge_init
    - user_unref
    - c_assert
    - user_charge_deinit
    - user_charge
    - user_registry_deinit
    linkageType: ''
    returnType: void
    signature: void test_overflow(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_setup
      Src: /src/dbus-broker/src/util/test-user.c:132,1
    - Dst: test_quota
      Src: /src/dbus-broker/src/util/test-user.c:133,1
    - Dst: test_overflow
      Src: /src/dbus-broker/src/util/test-user.c:134,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 131
    functionDepth: 2
    functionLinenumber: 131
    functionLinenumberEnd: 136
    functionName: main
    functionSourceFile: /src/dbus-broker/src/util/test-user.c
    functionUses: 0
    functionsReached:
    - test_overflow
    - test_quota
    - test_setup
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/dbus-broker/src/util/error.c:124,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/util/error.c:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 4
    argNames:
    - r
    - function
    - file
    - line
    argTypes:
    - int
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 132
    functionName: error_slow_origin
    functionSourceFile: /src/dbus-broker/src/util/error.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int error_slow_origin(int r, const char *function, const char *file,
      int line)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/dbus-broker/src/util/error.c:155,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - r
    - function
    - file
    - line
    argTypes:
    - int
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 158
    functionName: error_slow_trace
    functionSourceFile: /src/dbus-broker/src/util/error.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int error_slow_trace(int r, const char *function, const char *file,
      int line)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: error_slow_trace
      Src: /src/dbus-broker/src/util/error.c:179,1
    - Dst: error_slow_origin
      Src: /src/dbus-broker/src/util/error.c:181,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - r
    - function
    - file
    - line
    argTypes:
    - int
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 177
    functionDepth: 1
    functionLinenumber: 177
    functionLinenumberEnd: 184
    functionName: error_slow_fold
    functionSourceFile: /src/dbus-broker/src/util/error.c
    functionUses: 0
    functionsReached:
    - error_slow_trace
    - error_slow_origin
    linkageType: ''
    returnType: int
    signature: int error_slow_fold(int r, const char *function, const char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-fdlist.c:12,1
    - Dst: fdlist_new_with_fds
      Src: /src/dbus-broker/src/util/test-fdlist.c:15,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:16,1
    - Dst: fdlist_free
      Src: /src/dbus-broker/src/util/test-fdlist.c:18,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:19,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20
      start: 11
    functionDepth: 1
    functionLinenumber: 11
    functionLinenumberEnd: 20
    functionName: test_setup
    functionSourceFile: /src/dbus-broker/src/util/test-fdlist.c
    functionUses: 3
    functionsReached:
    - c_assert
    - _c_cleanup_
    - fdlist_free
    - fdlist_new_with_fds
    linkageType: ''
    returnType: void
    signature: void test_setup(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/util/test-fdlist.c:34,1
    - Dst: fdlist_new_with_fds
      Src: /src/dbus-broker/src/util/test-fdlist.c:35,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:36,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:38,1
    - Dst: fdlist_count
      Src: /src/dbus-broker/src/util/test-fdlist.c:38,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:41,1
    - Dst: fdlist_get
      Src: /src/dbus-broker/src/util/test-fdlist.c:41,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/util/test-fdlist.c:41,1
    - Dst: fdlist_free
      Src: /src/dbus-broker/src/util/test-fdlist.c:43,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 22
    functionDepth: 1
    functionLinenumber: 22
    functionLinenumberEnd: 45
    functionName: test_dummy
    functionSourceFile: /src/dbus-broker/src/util/test-fdlist.c
    functionUses: 2
    functionsReached:
    - fdlist_get
    - fdlist_free
    - fdlist_count
    - fdlist_new_with_fds
    - c_assert
    - C_ARRAY_SIZE
    linkageType: ''
    returnType: void
    signature: void test_dummy(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: epoll_create1
      Src: /src/dbus-broker/src/util/test-fdlist.c:60,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:61,1
    - Dst: epoll_create1
      Src: /src/dbus-broker/src/util/test-fdlist.c:63,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:64,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:65,1
    - Dst: epoll_create1
      Src: /src/dbus-broker/src/util/test-fdlist.c:67,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:68,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:69,1
    - Dst: fdlist_new_consume_fds
      Src: /src/dbus-broker/src/util/test-fdlist.c:71,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/util/test-fdlist.c:71,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:72,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:74,1
    - Dst: fdlist_count
      Src: /src/dbus-broker/src/util/test-fdlist.c:74,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/util/test-fdlist.c:74,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:75,1
    - Dst: memcmp
      Src: /src/dbus-broker/src/util/test-fdlist.c:75,1
    - Dst: fdlist_data
      Src: /src/dbus-broker/src/util/test-fdlist.c:75,1
    - Dst: fdlist_truncate
      Src: /src/dbus-broker/src/util/test-fdlist.c:77,1
    - Dst: epoll_create1
      Src: /src/dbus-broker/src/util/test-fdlist.c:79,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:80,1
    - Dst: close
      Src: /src/dbus-broker/src/util/test-fdlist.c:81,1
    - Dst: close
      Src: /src/dbus-broker/src/util/test-fdlist.c:83,1
    - Dst: fdlist_free
      Src: /src/dbus-broker/src/util/test-fdlist.c:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 86
    functionName: test_consumer
    functionSourceFile: /src/dbus-broker/src/util/test-fdlist.c
    functionUses: 0
    functionsReached:
    - fdlist_free
    - fdlist_count
    - close
    - epoll_create1
    - fdlist_data
    - c_assert
    - fdlist_new_consume_fds
    - C_ARRAY_SIZE
    - fdlist_truncate
    - memcmp
    linkageType: ''
    returnType: void
    signature: void test_consumer(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: epoll_create1
      Src: /src/dbus-broker/src/util/test-fdlist.c:101,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:102,1
    - Dst: epoll_create1
      Src: /src/dbus-broker/src/util/test-fdlist.c:104,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:105,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:106,1
    - Dst: epoll_create1
      Src: /src/dbus-broker/src/util/test-fdlist.c:108,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:109,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:110,1
    - Dst: fdlist_new_dup_fds
      Src: /src/dbus-broker/src/util/test-fdlist.c:112,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/util/test-fdlist.c:112,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:113,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:118,1
    - Dst: fdlist_count
      Src: /src/dbus-broker/src/util/test-fdlist.c:118,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/util/test-fdlist.c:118,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:119,1
    - Dst: memcmp
      Src: /src/dbus-broker/src/util/test-fdlist.c:119,1
    - Dst: fdlist_data
      Src: /src/dbus-broker/src/util/test-fdlist.c:119,1
    - Dst: fdlist_truncate
      Src: /src/dbus-broker/src/util/test-fdlist.c:121,1
    - Dst: epoll_create1
      Src: /src/dbus-broker/src/util/test-fdlist.c:123,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fdlist.c:124,1
    - Dst: close
      Src: /src/dbus-broker/src/util/test-fdlist.c:125,1
    - Dst: close
      Src: /src/dbus-broker/src/util/test-fdlist.c:127,1
    - Dst: close
      Src: /src/dbus-broker/src/util/test-fdlist.c:128,1
    - Dst: close
      Src: /src/dbus-broker/src/util/test-fdlist.c:129,1
    - Dst: fdlist_free
      Src: /src/dbus-broker/src/util/test-fdlist.c:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 132
    functionName: test_dup
    functionSourceFile: /src/dbus-broker/src/util/test-fdlist.c
    functionUses: 0
    functionsReached:
    - fdlist_new_dup_fds
    - fdlist_free
    - fdlist_count
    - close
    - epoll_create1
    - fdlist_data
    - c_assert
    - C_ARRAY_SIZE
    - fdlist_truncate
    - memcmp
    linkageType: ''
    returnType: void
    signature: void test_dup(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_setup
      Src: /src/dbus-broker/src/util/test-fdlist.c:135,1
    - Dst: test_dummy
      Src: /src/dbus-broker/src/util/test-fdlist.c:136,1
    - Dst: test_consumer
      Src: /src/dbus-broker/src/util/test-fdlist.c:137,1
    - Dst: test_dup
      Src: /src/dbus-broker/src/util/test-fdlist.c:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 134
    functionDepth: 2
    functionLinenumber: 134
    functionLinenumberEnd: 140
    functionName: main
    functionSourceFile: /src/dbus-broker/src/util/test-fdlist.c
    functionUses: 0
    functionsReached:
    - test_dup
    - test_consumer
    - test_dummy
    - test_setup
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/dirwatch.c:29,1
    - Dst: malloc
      Src: /src/dbus-broker/src/util/dirwatch.c:31,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/dirwatch.c:33,1
    - Dst: DIRWATCH_NULL
      Src: /src/dbus-broker/src/util/dirwatch.c:35,1
    - Dst: inotify_init1
      Src: /src/dbus-broker/src/util/dirwatch.c:37,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/dirwatch.c:39,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - dwp
    argTypes:
    - Dirwatch**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 44
    functionName: dirwatch_new
    functionSourceFile: /src/dbus-broker/src/util/dirwatch.c
    functionUses: 2
    functionsReached:
    - error_origin
    - _c_cleanup_
    - DIRWATCH_NULL
    - inotify_init1
    - malloc
    linkageType: ''
    returnType: int
    signature: int dirwatch_new(Dirwatch **dwp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_close
      Src: /src/dbus-broker/src/util/dirwatch.c:56,1
    - Dst: free
      Src: /src/dbus-broker/src/util/dirwatch.c:57,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - dw
    argTypes:
    - Dirwatch*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 60
    functionName: dirwatch_free
    functionSourceFile: /src/dbus-broker/src/util/dirwatch.c
    functionUses: 2
    functionsReached:
    - c_close
    - free
    linkageType: ''
    returnType: Dirwatch
    signature: Dirwatch *dirwatch_free(Dirwatch *dw)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dw
    argTypes:
    - Dirwatch*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 73
    functionName: dirwatch_get_fd
    functionSourceFile: /src/dbus-broker/src/util/dirwatch.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int dirwatch_get_fd(Dirwatch *dw)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: read
      Src: /src/dbus-broker/src/util/dirwatch.c:91,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/dirwatch.c:95,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/dirwatch.c:97,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - dw
    argTypes:
    - Dirwatch*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 102
    functionName: dirwatch_dispatch
    functionSourceFile: /src/dbus-broker/src/util/dirwatch.c
    functionUses: 1
    functionsReached:
    - read
    - error_origin
    linkageType: ''
    returnType: int
    signature: int dirwatch_dispatch(Dirwatch *dw)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: inotify_add_watch
      Src: /src/dbus-broker/src/util/dirwatch.c:112,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/dirwatch.c:122,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - dw
    - path
    argTypes:
    - Dirwatch*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 109
    functionDepth: 1
    functionLinenumber: 109
    functionLinenumberEnd: 126
    functionName: dirwatch_add
    functionSourceFile: /src/dbus-broker/src/util/dirwatch.c
    functionUses: 2
    functionsReached:
    - inotify_add_watch
    - error_origin
    linkageType: ''
    returnType: int
    signature: int dirwatch_add(Dirwatch *dw, const char *path)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/misc.c:60,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/misc.c:73,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/misc.c:85,1
    - Dst: syscall_memfd_create
      Src: /src/dbus-broker/src/util/misc.c:92,1
    - Dst: syscall_memfd_create
      Src: /src/dbus-broker/src/util/misc.c:95,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/misc.c:98,1
    - Dst: fstat
      Src: /src/dbus-broker/src/util/misc.c:105,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/misc.c:107,1
    - Dst: fchmod
      Src: /src/dbus-broker/src/util/misc.c:109,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/misc.c:111,1
    - Dst: misc_memfd_get_seals
      Src: /src/dbus-broker/src/util/misc.c:130,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/misc.c:132,1
    - Dst: misc_memfd_add_seals
      Src: /src/dbus-broker/src/util/misc.c:135,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/misc.c:137,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 39
    argCount: 3
    argNames:
    - name
    - uflags
    - useals
    argTypes:
    - char*
    - unsigned int
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 144
    functionName: misc_memfd
    functionSourceFile: /src/dbus-broker/src/util/misc.c
    functionUses: 1
    functionsReached:
    - misc_memfd_get_seals
    - fchmod
    - syscall_memfd_create
    - error_origin
    - misc_memfd_add_seals
    - _c_cleanup_
    - fstat
    - error_fold
    linkageType: ''
    returnType: int
    signature: int misc_memfd(const char *name, unsigned int uflags, unsigned int
      useals)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fcntl
      Src: /src/dbus-broker/src/util/misc.c:167,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/misc.c:169,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - fd
    - seals
    argTypes:
    - int
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 172
    functionName: misc_memfd_add_seals
    functionSourceFile: /src/dbus-broker/src/util/misc.c
    functionUses: 1
    functionsReached:
    - error_origin
    - fcntl
    linkageType: ''
    returnType: int
    signature: int misc_memfd_add_seals(int fd, unsigned int seals)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fcntl
      Src: /src/dbus-broker/src/util/misc.c:189,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/misc.c:191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - fd
    - sealsp
    argTypes:
    - int
    - unsigned int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 195
    functionName: misc_memfd_get_seals
    functionSourceFile: /src/dbus-broker/src/util/misc.c
    functionUses: 1
    functionsReached:
    - error_origin
    - fcntl
    linkageType: ''
    returnType: int
    signature: int misc_memfd_get_seals(int fd, unsigned int *sealsp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mul_overflow
      Src: /src/dbus-broker/src/util/misc.c:210,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - uint64_t
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 214
    functionName: util_umul64_saturating
    functionSourceFile: /src/dbus-broker/src/util/misc.c
    functionUses: 1
    functionsReached:
    - __builtin_mul_overflow
    linkageType: ''
    returnType: uint64_t
    signature: uint64_t util_umul64_saturating(uint64_t a, uint64_t b)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - v
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 233
    functionName: util_z2u_saturating
    functionSourceFile: /src/dbus-broker/src/util/misc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: unsigned int
    signature: unsigned int util_z2u_saturating(size_t v)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - v
    argTypes:
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 252
    functionName: util_t2u_saturating
    functionSourceFile: /src/dbus-broker/src/util/misc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: unsigned int
    signature: unsigned int util_t2u_saturating(uint64_t v)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: setgroups
      Src: /src/dbus-broker/src/util/misc.c:258,1
    - Dst: setgid
      Src: /src/dbus-broker/src/util/misc.c:260,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/misc.c:262,1
    - Dst: setuid
      Src: /src/dbus-broker/src/util/misc.c:264,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/misc.c:266,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - uid
    - gid
    argTypes:
    - uint32_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 269
    functionName: util_drop_permissions
    functionSourceFile: /src/dbus-broker/src/util/misc.c
    functionUses: 1
    functionsReached:
    - setuid
    - setgroups
    - setgid
    - error_origin
    linkageType: ''
    returnType: int
    signature: int util_drop_permissions(uint32_t uid, uint32_t gid)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - peak
    - update
    argTypes:
    - size_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 274
    functionName: util_peak_update
    functionSourceFile: /src/dbus-broker/src/util/misc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void util_peak_update(size_t *peak, size_t update)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/dbus-broker/src/util/string.h:37,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 38
    functionName: string_compare
    functionSourceFile: /src/dbus-broker/src/util/string.h
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: _c_pure_
    signature: _c_pure_ string_compare(const char *a, const char *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/dbus-broker/src/util/string.h:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: string_equal
    functionSourceFile: /src/dbus-broker/src/util/string.h
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: _c_pure_
    signature: _c_pure_ string_equal(const char *a, const char *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/dbus-broker/src/util/string.h:67,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/util/string.h:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - str
    - prefix
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: string_prefix
    functionSourceFile: /src/dbus-broker/src/util/string.h
    functionUses: 1
    functionsReached:
    - strncmp
    - strlen
    linkageType: ''
    returnType: _c_pure_
    signature: _c_pure_ *string_prefix(const char *str, const char *prefix)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - str
    - n
    - hex
    argTypes:
    - char*
    - size_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 89
    functionName: string_to_hex
    functionSourceFile: /src/dbus-broker/src/util/string.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void string_to_hex(const char *str, size_t n, char *hex)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/util/string.h:118,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - str
    - n
    - hex
    argTypes:
    - char*
    - size_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 125
    functionName: string_from_hex
    functionSourceFile: /src/dbus-broker/src/util/string.h
    functionUses: 0
    functionsReached:
    - _c_unlikely_
    linkageType: ''
    returnType: bool
    signature: bool string_from_hex(char *str, size_t n, const char *hex)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-dirwatch.c:15,1
    - Dst: dirwatch_new
      Src: /src/dbus-broker/src/util/test-dirwatch.c:20,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dirwatch.c:21,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-dirwatch.c:26,1
    - Dst: dirwatch_new
      Src: /src/dbus-broker/src/util/test-dirwatch.c:28,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dirwatch.c:29,1
    - Dst: dirwatch_get_fd
      Src: /src/dbus-broker/src/util/test-dirwatch.c:31,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dirwatch.c:32,1
    - Dst: dirwatch_dispatch
      Src: /src/dbus-broker/src/util/test-dirwatch.c:34,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dirwatch.c:35,1
    - Dst: dirwatch_add
      Src: /src/dbus-broker/src/util/test-dirwatch.c:37,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dirwatch.c:38,1
    - Dst: dirwatch_dispatch
      Src: /src/dbus-broker/src/util/test-dirwatch.c:40,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dirwatch.c:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 10
    functionDepth: 2
    functionLinenumber: 10
    functionLinenumberEnd: 43
    functionName: test_basic
    functionSourceFile: /src/dbus-broker/src/util/test-dirwatch.c
    functionUses: 1
    functionsReached:
    - dirwatch_dispatch
    - _c_cleanup_
    - dirwatch_new
    - dirwatch_add
    - c_assert
    - dirwatch_get_fd
    linkageType: ''
    returnType: void
    signature: void test_basic(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_basic
      Src: /src/dbus-broker/src/util/test-dirwatch.c:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: main
    functionSourceFile: /src/dbus-broker/src/util/test-dirwatch.c
    functionUses: 0
    functionsReached:
    - test_basic
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: proc_field
      Src: /src/dbus-broker/src/util/test-proc.c:17,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:22,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:23,1
    - Dst: string_equal
      Src: /src/dbus-broker/src/util/test-proc.c:23,1
    - Dst: c_free
      Src: /src/dbus-broker/src/util/test-proc.c:24,1
    - Dst: proc_field
      Src: /src/dbus-broker/src/util/test-proc.c:26,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:31,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:32,1
    - Dst: string_equal
      Src: /src/dbus-broker/src/util/test-proc.c:32,1
    - Dst: c_free
      Src: /src/dbus-broker/src/util/test-proc.c:33,1
    - Dst: proc_field
      Src: /src/dbus-broker/src/util/test-proc.c:35,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:40,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:41,1
    - Dst: string_equal
      Src: /src/dbus-broker/src/util/test-proc.c:41,1
    - Dst: c_free
      Src: /src/dbus-broker/src/util/test-proc.c:42,1
    - Dst: proc_field
      Src: /src/dbus-broker/src/util/test-proc.c:44,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:45,1
    - Dst: proc_field
      Src: /src/dbus-broker/src/util/test-proc.c:46,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:47,1
    - Dst: proc_field
      Src: /src/dbus-broker/src/util/test-proc.c:48,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:49,1
    - Dst: proc_field
      Src: /src/dbus-broker/src/util/test-proc.c:50,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:51,1
    - Dst: proc_field
      Src: /src/dbus-broker/src/util/test-proc.c:52,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 13
    functionDepth: 1
    functionLinenumber: 13
    functionLinenumberEnd: 54
    functionName: test_field
    functionSourceFile: /src/dbus-broker/src/util/test-proc.c
    functionUses: 0
    functionsReached:
    - c_assert
    - string_equal
    - proc_field
    - c_free
    linkageType: ''
    returnType: void
    signature: void test_field(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-proc.c:57,1
    - Dst: misc_memfd
      Src: /src/dbus-broker/src/util/test-proc.c:64,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:65,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/test-proc.c:67,1
    - Dst: pwrite
      Src: /src/dbus-broker/src/util/test-proc.c:68,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/test-proc.c:68,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:69,1
    - Dst: proc_read
      Src: /src/dbus-broker/src/util/test-proc.c:72,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:73,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:74,1
    - Dst: c_free
      Src: /src/dbus-broker/src/util/test-proc.c:75,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/test-proc.c:77,1
    - Dst: pwrite
      Src: /src/dbus-broker/src/util/test-proc.c:78,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/test-proc.c:78,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:79,1
    - Dst: proc_read
      Src: /src/dbus-broker/src/util/test-proc.c:82,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:83,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:84,1
    - Dst: c_free
      Src: /src/dbus-broker/src/util/test-proc.c:85,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 56
    functionDepth: 2
    functionLinenumber: 56
    functionLinenumberEnd: 86
    functionName: test_read
    functionSourceFile: /src/dbus-broker/src/util/test-proc.c
    functionUses: 0
    functionsReached:
    - strlen
    - misc_memfd
    - pwrite
    - c_free
    - _c_cleanup_
    - c_assert
    - proc_read
    linkageType: ''
    returnType: void
    signature: void test_read(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-proc.c:89,1
    - Dst: syscall_pidfd_open
      Src: /src/dbus-broker/src/util/test-proc.c:93,1
    - Dst: getpid
      Src: /src/dbus-broker/src/util/test-proc.c:93,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:95,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:99,1
    - Dst: proc_resolve_pidfd
      Src: /src/dbus-broker/src/util/test-proc.c:101,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:102,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-proc.c:103,1
    - Dst: getpid
      Src: /src/dbus-broker/src/util/test-proc.c:103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 104
    functionName: test_resolve_pidfd
    functionSourceFile: /src/dbus-broker/src/util/test-proc.c
    functionUses: 0
    functionsReached:
    - syscall_pidfd_open
    - _c_cleanup_
    - proc_resolve_pidfd
    - getpid
    - c_assert
    linkageType: ''
    returnType: void
    signature: void test_resolve_pidfd(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_field
      Src: /src/dbus-broker/src/util/test-proc.c:107,1
    - Dst: test_read
      Src: /src/dbus-broker/src/util/test-proc.c:108,1
    - Dst: test_resolve_pidfd
      Src: /src/dbus-broker/src/util/test-proc.c:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 106
    functionDepth: 3
    functionLinenumber: 106
    functionLinenumberEnd: 111
    functionName: main
    functionSourceFile: /src/dbus-broker/src/util/test-proc.c
    functionUses: 0
    functionsReached:
    - test_field
    - test_read
    - test_resolve_pidfd
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/user.h:39,1
    - Dst: abort
      Src: /src/dbus-broker/src/util/user.h:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - slot
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 42
    functionName: user_slot_to_string
    functionSourceFile: /src/dbus-broker/src/util/user.h
    functionUses: 0
    functionsReached:
    - c_assert
    - abort
    linkageType: ''
    returnType: char
    signature: char *user_slot_to_string(size_t slot)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ref_inc
      Src: /src/dbus-broker/src/util/user.h:117,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - user
    argTypes:
    - User*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 119
    functionName: user_ref
    functionSourceFile: /src/dbus-broker/src/util/user.h
    functionUses: 2
    functionsReached:
    - ref_inc
    linkageType: ''
    returnType: User
    signature: User *user_ref(User *user)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ref_dec
      Src: /src/dbus-broker/src/util/user.h:123,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - user
    argTypes:
    - User*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 125
    functionName: user_unref
    functionSourceFile: /src/dbus-broker/src/util/user.h
    functionUses: 5
    functionsReached:
    - ref_dec
    linkageType: ''
    returnType: User
    signature: User *user_unref(User *user)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CMSG_DATA
      Src: /src/dbus-broker/src/util/fdlist.h:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - list
    argTypes:
    - FDList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: fdlist_data
    functionSourceFile: /src/dbus-broker/src/util/fdlist.h
    functionUses: 2
    functionsReached:
    - CMSG_DATA
    linkageType: ''
    returnType: int
    signature: int *fdlist_data(FDList *list)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CMSG_LEN
      Src: /src/dbus-broker/src/util/fdlist.h:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - list
    argTypes:
    - FDList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 35
    functionName: fdlist_count
    functionSourceFile: /src/dbus-broker/src/util/fdlist.h
    functionUses: 11
    functionsReached:
    - CMSG_LEN
    linkageType: ''
    returnType: size_t
    signature: size_t fdlist_count(FDList *list)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CMSG_SPACE
      Src: /src/dbus-broker/src/util/fdlist.h:38,1
    - Dst: fdlist_count
      Src: /src/dbus-broker/src/util/fdlist.h:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - list
    argTypes:
    - FDList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: fdlist_size
    functionSourceFile: /src/dbus-broker/src/util/fdlist.h
    functionUses: 1
    functionsReached:
    - CMSG_SPACE
    - fdlist_count
    linkageType: ''
    returnType: size_t
    signature: size_t fdlist_size(FDList *list)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fdlist_count
      Src: /src/dbus-broker/src/util/fdlist.h:42,1
    - Dst: fdlist_data
      Src: /src/dbus-broker/src/util/fdlist.h:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - list
    - index
    argTypes:
    - FDList*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 43
    functionName: fdlist_get
    functionSourceFile: /src/dbus-broker/src/util/fdlist.h
    functionUses: 2
    functionsReached:
    - fdlist_data
    - fdlist_count
    linkageType: ''
    returnType: int
    signature: int fdlist_get(FDList *list, size_t index)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/dispatch.c:86,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/dispatch.c:87,1
    - Dst: epoll_ctl
      Src: /src/dbus-broker/src/util/dispatch.c:89,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/dispatch.c:97,1
    - Dst: C_LIST_INIT
      Src: /src/dbus-broker/src/util/dispatch.c:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 6
    argNames:
    - file
    - ctx
    - fn
    - fd
    - mask
    - events
    argTypes:
    - DispatchFile*
    - DispatchContext*
    - DispatchFn
    - int
    - uint32_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 110
    functionName: dispatch_file_init
    functionSourceFile: /src/dbus-broker/src/util/dispatch.c
    functionUses: 1
    functionsReached:
    - c_assert
    - epoll_ctl
    - C_LIST_INIT
    - error_origin
    linkageType: ''
    returnType: int
    signature: "int dispatch_file_init(DispatchFile *file,\n                       DispatchContext
      *ctx,\n                       DispatchFn fn,\n                       int fd,\n
      \                      uint32_t mask,\n                       uint32_t events)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: epoll_ctl
      Src: /src/dbus-broker/src/util/dispatch.c:141,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/dispatch.c:142,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/util/dispatch.c:145,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - file
    argTypes:
    - DispatchFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 151
    functionName: dispatch_file_deinit
    functionSourceFile: /src/dbus-broker/src/util/dispatch.c
    functionUses: 1
    functionsReached:
    - epoll_ctl
    - c_list_unlink
    - c_assert
    linkageType: ''
    returnType: void
    signature: void dispatch_file_deinit(DispatchFile *file)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/dispatch.c:171,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/util/dispatch.c:174,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/util/dispatch.c:175,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - file
    - mask
    argTypes:
    - DispatchFile*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 176
    functionName: dispatch_file_select
    functionSourceFile: /src/dbus-broker/src/util/dispatch.c
    functionUses: 4
    functionsReached:
    - c_assert
    - c_list_is_linked
    - c_list_link_tail
    linkageType: ''
    returnType: void
    signature: void dispatch_file_select(DispatchFile *file, uint32_t mask)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/dispatch.c:187,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/util/dispatch.c:191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - file
    - mask
    argTypes:
    - DispatchFile*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 192
    functionName: dispatch_file_deselect
    functionSourceFile: /src/dbus-broker/src/util/dispatch.c
    functionUses: 1
    functionsReached:
    - c_assert
    - c_list_unlink
    linkageType: ''
    returnType: void
    signature: void dispatch_file_deselect(DispatchFile *file, uint32_t mask)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/dispatch.c:204,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/util/dispatch.c:208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - file
    - mask
    argTypes:
    - DispatchFile*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 209
    functionName: dispatch_file_clear
    functionSourceFile: /src/dbus-broker/src/util/dispatch.c
    functionUses: 1
    functionsReached:
    - c_assert
    - c_list_unlink
    linkageType: ''
    returnType: void
    signature: void dispatch_file_clear(DispatchFile *file, uint32_t mask)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DISPATCH_CONTEXT_NULL
      Src: /src/dbus-broker/src/util/dispatch.c:220,1
    - Dst: epoll_create1
      Src: /src/dbus-broker/src/util/dispatch.c:222,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/dispatch.c:224,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - DispatchContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 227
    functionName: dispatch_context_init
    functionSourceFile: /src/dbus-broker/src/util/dispatch.c
    functionUses: 1
    functionsReached:
    - DISPATCH_CONTEXT_NULL
    - error_origin
    - epoll_create1
    linkageType: ''
    returnType: int
    signature: int dispatch_context_init(DispatchContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/dispatch.c:240,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/dispatch.c:241,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/util/dispatch.c:241,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/dispatch.c:243,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - DispatchContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 244
    functionName: dispatch_context_deinit
    functionSourceFile: /src/dbus-broker/src/util/dispatch.c
    functionUses: 0
    functionsReached:
    - c_assert
    - c_close
    - c_list_is_empty
    linkageType: ''
    returnType: void
    signature: void dispatch_context_deinit(DispatchContext *ctx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/dispatch.c:262,1
    - Dst: malloc
      Src: /src/dbus-broker/src/util/dispatch.c:270,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/dispatch.c:272,1
    - Dst: alloca
      Src: /src/dbus-broker/src/util/dispatch.c:276,1
    - Dst: epoll_wait
      Src: /src/dbus-broker/src/util/dispatch.c:279,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/dispatch.c:284,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/dispatch.c:291,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/util/dispatch.c:294,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/util/dispatch.c:295,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 2
    argNames:
    - ctx
    - timeout
    argTypes:
    - DispatchContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 299
    functionName: dispatch_context_poll
    functionSourceFile: /src/dbus-broker/src/util/dispatch.c
    functionUses: 0
    functionsReached:
    - c_list_is_linked
    - alloca
    - c_list_link_tail
    - error_origin
    - epoll_wait
    - _c_cleanup_
    - c_assert
    - malloc
    linkageType: ''
    returnType: int
    signature: int dispatch_context_poll(DispatchContext *ctx, int timeout)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C_LIST_INIT
      Src: /src/dbus-broker/src/util/dispatch.c:316,1
    - Dst: dispatch_context_poll
      Src: /src/dbus-broker/src/util/dispatch.c:320,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/util/dispatch.c:320,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/dispatch.c:322,1
    - Dst: c_list_swap
      Src: /src/dbus-broker/src/util/dispatch.c:337,1
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/util/dispatch.c:339,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/util/dispatch.c:340,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/util/dispatch.c:341,1
    - Dst: DispatchFile*::fn
      Src: /src/dbus-broker/src/util/dispatch.c:343,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/dispatch.c:344,1
    - Dst: c_list_splice
      Src: /src/dbus-broker/src/util/dispatch.c:345,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/dispatch.c:350,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/util/dispatch.c:350,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - DispatchContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 315
    functionDepth: 2
    functionLinenumber: 315
    functionLinenumberEnd: 352
    functionName: dispatch_context_dispatch
    functionSourceFile: /src/dbus-broker/src/util/dispatch.c
    functionUses: 1
    functionsReached:
    - C_LIST_INIT
    - c_list_swap
    - c_list_first_entry
    - c_list_link_tail
    - c_list_unlink
    - error_trace
    - c_list_is_empty
    - DispatchFile*::fn
    - dispatch_context_poll
    - c_list_splice
    - error_fold
    - c_assert
    linkageType: ''
    returnType: int
    signature: int dispatch_context_dispatch(DispatchContext *ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strtoul
      Src: /src/dbus-broker/src/util/string.c:18,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/string.c:23,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - valp
    - string
    argTypes:
    - uint32_t*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 11
    functionDepth: 1
    functionLinenumber: 11
    functionLinenumberEnd: 33
    functionName: util_strtou32
    functionSourceFile: /src/dbus-broker/src/util/string.c
    functionUses: 0
    functionsReached:
    - strtoul
    - error_origin
    linkageType: ''
    returnType: int
    signature: int util_strtou32(uint32_t *valp, const char *string)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strtoull
      Src: /src/dbus-broker/src/util/string.c:42,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/string.c:47,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - valp
    - string
    argTypes:
    - uint64_t*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 57
    functionName: util_strtou64
    functionSourceFile: /src/dbus-broker/src/util/string.c
    functionUses: 2
    functionsReached:
    - error_origin
    - strtoull
    linkageType: ''
    returnType: int
    signature: int util_strtou64(uint64_t *valp, const char *string)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strtol
      Src: /src/dbus-broker/src/util/string.c:64,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/string.c:69,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 2
    argNames:
    - valp
    - string
    argTypes:
    - int*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 79
    functionName: util_strtoint
    functionSourceFile: /src/dbus-broker/src/util/string.c
    functionUses: 0
    functionsReached:
    - error_origin
    - strtol
    linkageType: ''
    returnType: int
    signature: int util_strtoint(int *valp, const char *string)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/sockopt.c:16,1
    - Dst: malloc
      Src: /src/dbus-broker/src/util/sockopt.c:28,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/sockopt.c:30,1
    - Dst: getsockopt
      Src: /src/dbus-broker/src/util/sockopt.c:33,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/sockopt.c:41,1
    - Dst: realloc
      Src: /src/dbus-broker/src/util/sockopt.c:44,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/sockopt.c:46,1
    - Dst: strdup
      Src: /src/dbus-broker/src/util/sockopt.c:52,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/sockopt.c:54,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/sockopt.c:57,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 3
    argNames:
    - fd
    - labelp
    - lenp
    argTypes:
    - int
    - char**
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 15
    functionDepth: 1
    functionLinenumber: 15
    functionLinenumberEnd: 59
    functionName: sockopt_get_peersec
    functionSourceFile: /src/dbus-broker/src/util/sockopt.c
    functionUses: 0
    functionsReached:
    - strlen
    - error_origin
    - realloc
    - getsockopt
    - _c_cleanup_
    - strdup
    - malloc
    linkageType: ''
    returnType: int
    signature: int sockopt_get_peersec(int fd, char **labelp, size_t *lenp)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - va
    - vb
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 70
    functionName: gid_compare
    functionSourceFile: /src/dbus-broker/src/util/sockopt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int gid_compare(const void *va, const void *vb)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/sockopt.c:73,1
    - Dst: malloc
      Src: /src/dbus-broker/src/util/sockopt.c:98,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/sockopt.c:100,1
    - Dst: getsockopt
      Src: /src/dbus-broker/src/util/sockopt.c:103,1
    - Dst: realloc
      Src: /src/dbus-broker/src/util/sockopt.c:105,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/sockopt.c:107,1
    - Dst: getsockopt
      Src: /src/dbus-broker/src/util/sockopt.c:111,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/sockopt.c:114,1
    - Dst: qsort
      Src: /src/dbus-broker/src/util/sockopt.c:119,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/util/sockopt.c:147,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/util/sockopt.c:148,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/sockopt.c:151,1
    - Dst: getpwuid
      Src: /src/dbus-broker/src/util/sockopt.c:170,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/sockopt.c:172,1
    - Dst: realloc
      Src: /src/dbus-broker/src/util/sockopt.c:177,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/sockopt.c:179,1
    - Dst: getgrouplist
      Src: /src/dbus-broker/src/util/sockopt.c:182,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/sockopt.c:184,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 66
    argCount: 6
    argNames:
    - fd
    - log
    - uid
    - primary_gid
    - gidsp
    - n_gidsp
    argTypes:
    - int
    - Log*
    - uid_t
    - gid_t
    - gid_t**
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 72
    functionDepth: 2
    functionLinenumber: 72
    functionLinenumberEnd: 196
    functionName: sockopt_get_peergroups
    functionSourceFile: /src/dbus-broker/src/util/sockopt.c
    functionUses: 0
    functionsReached:
    - log_commitf
    - qsort
    - getpwuid
    - log_append_here
    - error_origin
    - getgrouplist
    - realloc
    - getsockopt
    - _c_cleanup_
    - malloc
    - error_fold
    linkageType: ''
    returnType: int
    signature: int sockopt_get_peergroups(int fd, Log *log, uid_t uid, gid_t primary_gid,
      gid_t **gidsp, size_t *n_gidsp)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: getsockopt
      Src: /src/dbus-broker/src/util/sockopt.c:235,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/sockopt.c:244,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - fd
    - pidfdp
    argTypes:
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 220
    functionDepth: 1
    functionLinenumber: 220
    functionLinenumberEnd: 249
    functionName: sockopt_get_peerpidfd
    functionSourceFile: /src/dbus-broker/src/util/sockopt.c
    functionUses: 1
    functionsReached:
    - error_origin
    - getsockopt
    linkageType: ''
    returnType: int
    signature: int sockopt_get_peerpidfd(int fd, int *pidfdp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/dbus-broker/src/util/proc.c:40,1
    - Dst: strstr
      Src: /src/dbus-broker/src/util/proc.c:48,1
    - Dst: strspn
      Src: /src/dbus-broker/src/util/proc.c:58,1
    - Dst: strspn
      Src: /src/dbus-broker/src/util/proc.c:65,1
    - Dst: strndup
      Src: /src/dbus-broker/src/util/proc.c:68,1
    - Dst: strcspn
      Src: /src/dbus-broker/src/util/proc.c:68,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/proc.c:70,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - data
    - key
    - valuep
    argTypes:
    - char*
    - char*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 74
    functionName: proc_field
    functionSourceFile: /src/dbus-broker/src/util/proc.c
    functionUses: 1
    functionsReached:
    - strlen
    - strstr
    - error_origin
    - strcspn
    - strndup
    - strspn
    linkageType: ''
    returnType: int
    signature: int proc_field(const char *data, const char *key, char **valuep)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/proc.c:101,1
    - Dst: malloc
      Src: /src/dbus-broker/src/util/proc.c:104,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/proc.c:106,1
    - Dst: pread
      Src: /src/dbus-broker/src/util/proc.c:108,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/proc.c:110,1
    - Dst: c_free
      Src: /src/dbus-broker/src/util/proc.c:126,1
    - Dst: malloc
      Src: /src/dbus-broker/src/util/proc.c:127,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/proc.c:129,1
    - Dst: pread
      Src: /src/dbus-broker/src/util/proc.c:131,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/proc.c:133,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/proc.c:135,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 3
    argNames:
    - fd
    - datap
    - n_datap
    argTypes:
    - int
    - char**
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 148
    functionName: proc_read
    functionSourceFile: /src/dbus-broker/src/util/proc.c
    functionUses: 1
    functionsReached:
    - pread
    - error_origin
    - c_free
    - _c_cleanup_
    - malloc
    linkageType: ''
    returnType: int
    signature: int proc_read(int fd, char **datap, size_t *n_datap)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/proc.c:151,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/util/proc.c:155,1
    - Dst: sprintf
      Src: /src/dbus-broker/src/util/proc.c:157,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/proc.c:159,1
    - Dst: fopen
      Src: /src/dbus-broker/src/util/proc.c:161,1
    - Dst: fgets
      Src: /src/dbus-broker/src/util/proc.c:164,1
    - Dst: ferror
      Src: /src/dbus-broker/src/util/proc.c:171,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/proc.c:172,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/proc.c:172,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/proc.c:175,1
    - Dst: strchrnul
      Src: /src/dbus-broker/src/util/proc.c:178,1
    - Dst: strndup
      Src: /src/dbus-broker/src/util/proc.c:179,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/proc.c:181,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/proc.c:184,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 3
    argNames:
    - pid
    - labelp
    - n_labelp
    argTypes:
    - pid_t
    - char**
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 187
    functionName: proc_get_seclabel
    functionSourceFile: /src/dbus-broker/src/util/proc.c
    functionUses: 1
    functionsReached:
    - strcpy
    - strlen
    - fgets
    - error_origin
    - _c_cleanup_
    - strchrnul
    - fopen
    - strndup
    - sprintf
    - ferror
    linkageType: ''
    returnType: int
    signature: int proc_get_seclabel(pid_t pid, char **labelp, size_t *n_labelp)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/proc.c:190,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/proc.c:191,1
    - Dst: sprintf
      Src: /src/dbus-broker/src/util/proc.c:195,1
    - Dst: open
      Src: /src/dbus-broker/src/util/proc.c:196,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/proc.c:198,1
    - Dst: proc_read
      Src: /src/dbus-broker/src/util/proc.c:200,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/proc.c:202,1
    - Dst: proc_field
      Src: /src/dbus-broker/src/util/proc.c:204,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/proc.c:206,1
    - Dst: util_strtoint
      Src: /src/dbus-broker/src/util/proc.c:208,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/proc.c:210,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - pidfd
    - pidp
    argTypes:
    - int
    - pid_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 189
    functionDepth: 2
    functionLinenumber: 189
    functionLinenumberEnd: 213
    functionName: proc_resolve_pidfd
    functionSourceFile: /src/dbus-broker/src/util/proc.c
    functionUses: 2
    functionsReached:
    - error_origin
    - _c_cleanup_
    - proc_field
    - sprintf
    - proc_read
    - open
    - error_fold
    - util_strtoint
    linkageType: ''
    returnType: int
    signature: int proc_resolve_pidfd(int pidfd, pid_t *pidp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/ref.h:47,1
    - Dst: atomic_fetch_add_explicit
      Src: /src/dbus-broker/src/util/ref.h:55,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/ref.h:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ref
    - n
    argTypes:
    - unsigned long*
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 60
    functionName: ref_add
    functionSourceFile: /src/dbus-broker/src/util/ref.h
    functionUses: 0
    functionsReached:
    - c_assert
    - atomic_fetch_add_explicit
    linkageType: ''
    returnType: unsigned long
    signature: unsigned long *ref_add(_Atomic unsigned long *ref, unsigned long n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/ref.h:88,1
    - Dst: atomic_load_explicit
      Src: /src/dbus-broker/src/util/ref.h:101,1
    - Dst: atomic_compare_exchange_weak_explicit
      Src: /src/dbus-broker/src/util/ref.h:105,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ref
    - n
    argTypes:
    - unsigned long*
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 111
    functionName: ref_add_unless_zero
    functionSourceFile: /src/dbus-broker/src/util/ref.h
    functionUses: 0
    functionsReached:
    - c_assert
    - atomic_compare_exchange_weak_explicit
    - atomic_load_explicit
    linkageType: ''
    returnType: unsigned long
    signature: unsigned long *ref_add_unless_zero(_Atomic unsigned long *ref, unsigned
      long n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ref_add
      Src: /src/dbus-broker/src/util/ref.h:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ref
    argTypes:
    - unsigned long*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 126
    functionName: ref_inc
    functionSourceFile: /src/dbus-broker/src/util/ref.h
    functionUses: 2
    functionsReached:
    - ref_add
    linkageType: ''
    returnType: unsigned long
    signature: unsigned long *ref_inc(_Atomic unsigned long *ref)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ref_add_unless_zero
      Src: /src/dbus-broker/src/util/ref.h:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ref
    argTypes:
    - unsigned long*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionName: ref_inc_unless_zero
    functionSourceFile: /src/dbus-broker/src/util/ref.h
    functionUses: 0
    functionsReached:
    - ref_add_unless_zero
    linkageType: ''
    returnType: unsigned long
    signature: unsigned long *ref_inc_unless_zero(_Atomic unsigned long *ref)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/ref.h:154,1
    - Dst: abort
      Src: /src/dbus-broker/src/util/ref.h:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ref
    - userdata
    argTypes:
    - unsigned long*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 156
    functionName: ref_unreachable
    functionSourceFile: /src/dbus-broker/src/util/ref.h
    functionUses: 0
    functionsReached:
    - c_assert
    - abort
    linkageType: ''
    returnType: void
    signature: void ref_unreachable(_Atomic unsigned long *ref, void *userdata)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: atomic_fetch_sub_explicit
      Src: /src/dbus-broker/src/util/ref.h:193,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/ref.h:194,1
    - Dst: atomic_thread_fence
      Src: /src/dbus-broker/src/util/ref.h:196,1
    - Dst: func
      Src: /src/dbus-broker/src/util/ref.h:198,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - ref
    - n
    - func
    - userdata
    argTypes:
    - unsigned long*
    - unsigned long
    - RefFn
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 203
    functionName: ref_sub
    functionSourceFile: /src/dbus-broker/src/util/ref.h
    functionUses: 0
    functionsReached:
    - c_assert
    - atomic_thread_fence
    - func
    - atomic_fetch_sub_explicit
    linkageType: ''
    returnType: unsigned long
    signature: unsigned long *ref_sub(_Atomic unsigned long *ref, unsigned long n,
      RefFn func, void *userdata)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ref_sub
      Src: /src/dbus-broker/src/util/ref.h:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ref
    - func
    - userdata
    argTypes:
    - unsigned long*
    - RefFn
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 217
    functionDepth: 1
    functionLinenumber: 217
    functionLinenumberEnd: 219
    functionName: ref_dec
    functionSourceFile: /src/dbus-broker/src/util/ref.h
    functionUses: 2
    functionsReached:
    - ref_sub
    linkageType: ''
    returnType: unsigned long
    signature: unsigned long *ref_dec(_Atomic unsigned long *ref, RefFn func, void
      *userdata)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/dbus-broker/src/util/systemd.c:11,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15
      start: 10
    functionDepth: 0
    functionLinenumber: 10
    functionLinenumberEnd: 15
    functionName: needs_escape
    functionSourceFile: /src/dbus-broker/src/util/systemd.c
    functionUses: 0
    functionsReached:
    - strchr
    linkageType: ''
    returnType: bool
    signature: bool needs_escape(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - t
    - c
    argTypes:
    - char*
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 27
    functionName: escape_char
    functionSourceFile: /src/dbus-broker/src/util/systemd.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *escape_char(char *t, char c)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/dbus-broker/src/util/systemd.c:43,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/systemd.c:43,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/systemd.c:45,1
    - Dst: escape_char
      Src: /src/dbus-broker/src/util/systemd.c:51,1
    - Dst: needs_escape
      Src: /src/dbus-broker/src/util/systemd.c:56,1
    - Dst: escape_char
      Src: /src/dbus-broker/src/util/systemd.c:57,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - escapedp
    - unescaped
    argTypes:
    - char**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 65
    functionName: systemd_escape_unit
    functionSourceFile: /src/dbus-broker/src/util/systemd.c
    functionUses: 1
    functionsReached:
    - needs_escape
    - strlen
    - error_origin
    - escape_char
    - malloc
    linkageType: ''
    returnType: int
    signature: int systemd_escape_unit(char **escapedp, const char *unescaped)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: util_drop_permissions
      Src: /src/dbus-broker/src/util/audit-fallback.c:21,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - uid
    - gid
    argTypes:
    - uint32_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 20
    functionDepth: 2
    functionLinenumber: 20
    functionLinenumberEnd: 22
    functionName: util_audit_drop_permissions
    functionSourceFile: /src/dbus-broker/src/util/audit-fallback.c
    functionUses: 1
    functionsReached:
    - util_drop_permissions
    linkageType: ''
    returnType: int
    signature: int util_audit_drop_permissions(uint32_t uid, uint32_t gid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - type
    - message
    - uid
    argTypes:
    - int
    - char*
    - uid_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: util_audit_log
    functionSourceFile: /src/dbus-broker/src/util/audit-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int util_audit_log(int type, const char *message, uid_t uid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: util_audit_init_global
    functionSourceFile: /src/dbus-broker/src/util/audit-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int util_audit_init_global(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 34
    functionName: util_audit_deinit_global
    functionSourceFile: /src/dbus-broker/src/util/audit-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void util_audit_deinit_global(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/util/test-systemd.c:26,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-systemd.c:27,1
    - Dst: systemd_escape_unit
      Src: /src/dbus-broker/src/util/test-systemd.c:30,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-systemd.c:31,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-systemd.c:32,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/util/test-systemd.c:32,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 10
    functionDepth: 2
    functionLinenumber: 10
    functionLinenumberEnd: 34
    functionName: test_systemd_escape_unit
    functionSourceFile: /src/dbus-broker/src/util/test-systemd.c
    functionUses: 0
    functionsReached:
    - _c_cleanup_
    - c_assert
    - strcmp
    - C_ARRAY_SIZE
    - systemd_escape_unit
    linkageType: ''
    returnType: void
    signature: void test_systemd_escape_unit(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_systemd_escape_unit
      Src: /src/dbus-broker/src/util/test-systemd.c:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 3
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: main
    functionSourceFile: /src/dbus-broker/src/util/test-systemd.c
    functionUses: 0
    functionsReached:
    - test_systemd_escape_unit
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: syscall
      Src: /src/dbus-broker/src/util/syscall.h:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - flags
    argTypes:
    - char*
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 38
    functionName: syscall_memfd_create
    functionSourceFile: /src/dbus-broker/src/util/syscall.h
    functionUses: 2
    functionsReached:
    - syscall
    linkageType: ''
    returnType: int
    signature: int syscall_memfd_create(const char *name, unsigned int flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: syscall
      Src: /src/dbus-broker/src/util/syscall.h:59,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 2
    argNames:
    - pid
    - flags
    argTypes:
    - pid_t
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 60
    functionName: syscall_pidfd_open
    functionSourceFile: /src/dbus-broker/src/util/syscall.h
    functionUses: 1
    functionsReached:
    - syscall
    linkageType: ''
    returnType: int
    signature: int syscall_pidfd_open(pid_t pid, unsigned int flags)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/apparmor.c:37,1
    - Dst: fopen
      Src: /src/dbus-broker/src/util/apparmor.c:41,1
    - Dst: fgets
      Src: /src/dbus-broker/src/util/apparmor.c:44,1
    - Dst: ferror
      Src: /src/dbus-broker/src/util/apparmor.c:45,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:46,1
    - Dst: c_errno
      Src: /src/dbus-broker/src/util/apparmor.c:46,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:57,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:62,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 1
    argNames:
    - enabledp
    argTypes:
    - bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 67
    functionName: bus_apparmor_is_enabled
    functionSourceFile: /src/dbus-broker/src/util/apparmor.c
    functionUses: 2
    functionsReached:
    - fgets
    - error_origin
    - _c_cleanup_
    - fopen
    - c_errno
    - ferror
    linkageType: ''
    returnType: int
    signature: int bus_apparmor_is_enabled(bool *enabledp)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/apparmor.c:79,1
    - Dst: fopen
      Src: /src/dbus-broker/src/util/apparmor.c:83,1
    - Dst: fgets
      Src: /src/dbus-broker/src/util/apparmor.c:86,1
    - Dst: ferror
      Src: /src/dbus-broker/src/util/apparmor.c:87,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:88,1
    - Dst: c_errno
      Src: /src/dbus-broker/src/util/apparmor.c:88,1
    - Dst: strstr
      Src: /src/dbus-broker/src/util/apparmor.c:91,1
    - Dst: strstr
      Src: /src/dbus-broker/src/util/apparmor.c:91,1
    - Dst: strstr
      Src: /src/dbus-broker/src/util/apparmor.c:91,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:98,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 1
    argNames:
    - supportedp
    argTypes:
    - bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 103
    functionName: bus_apparmor_dbus_supported
    functionSourceFile: /src/dbus-broker/src/util/apparmor.c
    functionUses: 1
    functionsReached:
    - fgets
    - error_origin
    - strstr
    - _c_cleanup_
    - fopen
    - c_errno
    - ferror
    linkageType: ''
    returnType: int
    signature: int bus_apparmor_dbus_supported(bool *supportedp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/apparmor.c:113,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:116,1
    - Dst: calloc
      Src: /src/dbus-broker/src/util/apparmor.c:117,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:119,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/util/apparmor.c:122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - registryp
    - fallback_context
    argTypes:
    - struct BusAppArmorRegistry**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 127
    functionName: bus_apparmor_registry_new
    functionSourceFile: /src/dbus-broker/src/util/apparmor.c
    functionUses: 0
    functionsReached:
    - strcpy
    - strlen
    - calloc
    - error_origin
    - _c_cleanup_
    linkageType: ''
    returnType: int
    signature: int bus_apparmor_registry_new(struct BusAppArmorRegistry **registryp,
      const char *fallback_context)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/util/apparmor.c:130,1
    - Dst: free
      Src: /src/dbus-broker/src/util/apparmor.c:132,1
    - Dst: free
      Src: /src/dbus-broker/src/util/apparmor.c:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - n_refs
    - userdata
    argTypes:
    - unsigned long*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 134
    functionName: bus_apparmor_registry_free
    functionSourceFile: /src/dbus-broker/src/util/apparmor.c
    functionUses: 0
    functionsReached:
    - c_container_of
    - free
    linkageType: ''
    returnType: void
    signature: void bus_apparmor_registry_free(_Atomic unsigned long *n_refs, void
      *userdata)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ref_inc
      Src: /src/dbus-broker/src/util/apparmor.c:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - registry
    argTypes:
    - BusAppArmorRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 136
    functionDepth: 2
    functionLinenumber: 136
    functionLinenumberEnd: 141
    functionName: bus_apparmor_registry_ref
    functionSourceFile: /src/dbus-broker/src/util/apparmor.c
    functionUses: 0
    functionsReached:
    - ref_inc
    linkageType: ''
    returnType: BusAppArmorRegistry
    signature: BusAppArmorRegistry *bus_apparmor_registry_ref(BusAppArmorRegistry
      *registry)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ref_dec
      Src: /src/dbus-broker/src/util/apparmor.c:145,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - registry
    argTypes:
    - BusAppArmorRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 143
    functionDepth: 2
    functionLinenumber: 143
    functionLinenumberEnd: 148
    functionName: bus_apparmor_registry_unref
    functionSourceFile: /src/dbus-broker/src/util/apparmor.c
    functionUses: 0
    functionsReached:
    - ref_dec
    linkageType: ''
    returnType: BusAppArmorRegistry
    signature: BusAppArmorRegistry *bus_apparmor_registry_unref(BusAppArmorRegistry
      *registry)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strdup
      Src: /src/dbus-broker/src/util/apparmor.c:154,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:156,1
    - Dst: free
      Src: /src/dbus-broker/src/util/apparmor.c:161,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - registry
    - bustype
    argTypes:
    - BusAppArmorRegistry*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 165
    functionName: bus_apparmor_set_bus_type
    functionSourceFile: /src/dbus-broker/src/util/apparmor.c
    functionUses: 0
    functionsReached:
    - error_origin
    - free
    - strdup
    linkageType: ''
    returnType: int
    signature: int bus_apparmor_set_bus_type(BusAppArmorRegistry *registry, const
      char *bustype)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/apparmor.c:168,1
    - Dst: va_start
      Src: /src/dbus-broker/src/util/apparmor.c:172,1
    - Dst: vasprintf
      Src: /src/dbus-broker/src/util/apparmor.c:173,1
    - Dst: va_end
      Src: /src/dbus-broker/src/util/apparmor.c:174,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:176,1
    - Dst: util_audit_log
      Src: /src/dbus-broker/src/util/apparmor.c:181,1
    - Dst: getuid
      Src: /src/dbus-broker/src/util/apparmor.c:181,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/apparmor.c:183,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - registry
    - fmt
    argTypes:
    - BusAppArmorRegistry*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 186
    functionName: bus_apparmor_log
    functionSourceFile: /src/dbus-broker/src/util/apparmor.c
    functionUses: 0
    functionsReached:
    - va_start
    - va_end
    - error_origin
    - util_audit_log
    - _c_cleanup_
    - vasprintf
    - error_fold
    - getuid
    linkageType: ''
    returnType: int
    signature: int bus_apparmor_log(BusAppArmorRegistry *registry, const char *fmt,
      ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string_equal
      Src: /src/dbus-broker/src/util/apparmor.c:189,1
    - Dst: string_equal
      Src: /src/dbus-broker/src/util/apparmor.c:190,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - label
    - mode
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 188
    functionDepth: 1
    functionLinenumber: 188
    functionLinenumberEnd: 191
    functionName: is_unconfined
    functionSourceFile: /src/dbus-broker/src/util/apparmor.c
    functionUses: 0
    functionsReached:
    - string_equal
    linkageType: ''
    returnType: bool
    signature: bool is_unconfined(const char *label, const char *mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:204,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:206,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:207,1
    - Dst: malloc
      Src: /src/dbus-broker/src/util/apparmor.c:208,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:210,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/util/apparmor.c:213,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:214,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/util/apparmor.c:216,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:217,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/util/apparmor.c:218,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 5
    argNames:
    - queryp
    - n_queryp
    - security_label
    - bustype
    - name
    argTypes:
    - char**
    - size_t*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 193
    functionDepth: 1
    functionLinenumber: 193
    functionLinenumberEnd: 223
    functionName: build_service_query
    functionSourceFile: /src/dbus-broker/src/util/apparmor.c
    functionUses: 0
    functionsReached:
    - strcpy
    - malloc
    - error_origin
    - strlen
    linkageType: ''
    returnType: int
    signature: "int build_service_query(\n        char **queryp,\n        size_t *n_queryp,\n
      \       const char *security_label,\n        const char *bustype,\n        const
      char *name\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:240,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:242,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:243,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:244,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:245,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:246,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:247,1
    - Dst: malloc
      Src: /src/dbus-broker/src/util/apparmor.c:249,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:251,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/util/apparmor.c:254,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:255,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/util/apparmor.c:257,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:258,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/util/apparmor.c:259,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:260,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/util/apparmor.c:261,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:262,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/util/apparmor.c:263,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:264,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/util/apparmor.c:265,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:266,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/util/apparmor.c:267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 9
    argNames:
    - queryp
    - n_queryp
    - security_label
    - bustype
    - name
    - receiver_context
    - path
    - interface
    - method
    argTypes:
    - char**
    - size_t*
    - char*
    - char*
    - char*
    - char*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 272
    functionName: build_message_query_name
    functionSourceFile: /src/dbus-broker/src/util/apparmor.c
    functionUses: 0
    functionsReached:
    - strcpy
    - malloc
    - error_origin
    - strlen
    linkageType: ''
    returnType: int
    signature: "int build_message_query_name(\n        char **queryp,\n        size_t
      *n_queryp,\n        const char *security_label,\n        const char *bustype,\n
      \       const char *name,\n        const char *receiver_context,\n        const
      char *path,\n        const char *interface,\n        const char *method\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:284,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:286,1
    - Dst: malloc
      Src: /src/dbus-broker/src/util/apparmor.c:287,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:289,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/util/apparmor.c:292,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/apparmor.c:293,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/util/apparmor.c:295,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 4
    argNames:
    - queryp
    - n_queryp
    - security_label
    - bustype
    argTypes:
    - char**
    - size_t*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 300
    functionName: build_eavesdrop_query
    functionSourceFile: /src/dbus-broker/src/util/apparmor.c
    functionUses: 0
    functionsReached:
    - strcpy
    - malloc
    - error_origin
    - strlen
    linkageType: ''
    returnType: int
    signature: "int build_eavesdrop_query(\n        char **queryp,\n        size_t
      *n_queryp,\n        const char *security_label,\n        const char *bustype\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/apparmor.c:314,1
    - Dst: build_message_query_name
      Src: /src/dbus-broker/src/util/apparmor.c:318,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/apparmor.c:330,1
    - Dst: aa_query_label
      Src: /src/dbus-broker/src/util/apparmor.c:332,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:340,1
    - Dst: c_errno
      Src: /src/dbus-broker/src/util/apparmor.c:340,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 10
    argNames:
    - check_send
    - security_label
    - bustype
    - receiver_context
    - name
    - path
    - interface
    - method
    - allow
    - audit
    argTypes:
    - bool
    - char*
    - char*
    - char*
    - char*
    - char*
    - char*
    - char*
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 302
    functionDepth: 2
    functionLinenumber: 302
    functionLinenumberEnd: 343
    functionName: apparmor_message_query_name
    functionSourceFile: /src/dbus-broker/src/util/apparmor.c
    functionUses: 0
    functionsReached:
    - error_origin
    - aa_query_label
    - _c_cleanup_
    - c_errno
    - build_message_query_name
    - error_fold
    linkageType: ''
    returnType: int
    signature: "int apparmor_message_query_name(\n        bool check_send,\n        const
      char *security_label,\n        const char *bustype,\n        const char *receiver_context,\n
      \       const char *name,\n        const char *path,\n        const char *interface,\n
      \       const char *method,\n        int *allow,\n        int *audit\n)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: apparmor_message_query_name
      Src: /src/dbus-broker/src/util/apparmor.c:363,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/apparmor.c:369,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/util/apparmor.c:371,1
    - Dst: address_init_from_id
      Src: /src/dbus-broker/src/util/apparmor.c:374,1
    - Dst: apparmor_message_query_name
      Src: /src/dbus-broker/src/util/apparmor.c:376,1
    - Dst: address_to_string
      Src: /src/dbus-broker/src/util/apparmor.c:378,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/apparmor.c:382,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/util/apparmor.c:387,1
    - Dst: apparmor_message_query_name
      Src: /src/dbus-broker/src/util/apparmor.c:388,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/apparmor.c:395,1
    - Dst: apparmor_message_query_name
      Src: /src/dbus-broker/src/util/apparmor.c:407,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/apparmor.c:414,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/apparmor.c:424,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:425,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 47
    argCount: 11
    argNames:
    - check_send
    - security_label
    - bustype
    - receiver_context
    - nameset
    - subject_id
    - path
    - interface
    - method
    - allow
    - audit
    argTypes:
    - bool
    - char*
    - char*
    - char*
    - NameSet*
    - uint64_t
    - char*
    - char*
    - char*
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 345
    functionDepth: 3
    functionLinenumber: 345
    functionLinenumberEnd: 429
    functionName: apparmor_message_query
    functionSourceFile: /src/dbus-broker/src/util/apparmor.c
    functionUses: 0
    functionsReached:
    - apparmor_message_query_name
    - c_rbtree_is_empty
    - address_init_from_id
    - error_origin
    - c_rbtree_for_each_entry
    - address_to_string
    - c_assert
    - error_fold
    linkageType: ''
    returnType: int
    signature: "int apparmor_message_query(\n        bool check_send,\n        const
      char *security_label,\n        const char *bustype,\n        const char *receiver_context,\n
      \       NameSet *nameset,\n        uint64_t subject_id,\n        const char
      *path,\n        const char *interface,\n        const char *method,\n        int
      *allow,\n        int *audit\n)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/apparmor.c:445,1
    - Dst: strdup
      Src: /src/dbus-broker/src/util/apparmor.c:453,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:455,1
    - Dst: aa_splitcon
      Src: /src/dbus-broker/src/util/apparmor.c:457,1
    - Dst: is_unconfined
      Src: /src/dbus-broker/src/util/apparmor.c:459,1
    - Dst: build_service_query
      Src: /src/dbus-broker/src/util/apparmor.c:462,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/apparmor.c:470,1
    - Dst: aa_query_label
      Src: /src/dbus-broker/src/util/apparmor.c:472,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:474,1
    - Dst: c_errno
      Src: /src/dbus-broker/src/util/apparmor.c:474,1
    - Dst: bus_apparmor_log
      Src: /src/dbus-broker/src/util/apparmor.c:477,1
    - Dst: string_equal
      Src: /src/dbus-broker/src/util/apparmor.c:486,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 3
    argNames:
    - registry
    - owner_context
    - name
    argTypes:
    - struct BusAppArmorRegistry*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 442
    functionDepth: 2
    functionLinenumber: 442
    functionLinenumberEnd: 490
    functionName: bus_apparmor_check_own
    functionSourceFile: /src/dbus-broker/src/util/apparmor.c
    functionUses: 0
    functionsReached:
    - aa_splitcon
    - error_origin
    - aa_query_label
    - _c_cleanup_
    - build_service_query
    - is_unconfined
    - strdup
    - string_equal
    - bus_apparmor_log
    - c_errno
    - error_fold
    linkageType: ''
    returnType: int
    signature: "int bus_apparmor_check_own(struct BusAppArmorRegistry *registry,\n
      \                          const char *owner_context,\n                           const
      char *name)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/apparmor.c:523,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/apparmor.c:524,1
    - Dst: strdup
      Src: /src/dbus-broker/src/util/apparmor.c:532,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:534,1
    - Dst: strdup
      Src: /src/dbus-broker/src/util/apparmor.c:535,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:537,1
    - Dst: aa_splitcon
      Src: /src/dbus-broker/src/util/apparmor.c:539,1
    - Dst: aa_splitcon
      Src: /src/dbus-broker/src/util/apparmor.c:540,1
    - Dst: is_unconfined
      Src: /src/dbus-broker/src/util/apparmor.c:542,1
    - Dst: is_unconfined
      Src: /src/dbus-broker/src/util/apparmor.c:544,1
    - Dst: apparmor_message_query
      Src: /src/dbus-broker/src/util/apparmor.c:548,1
    - Dst: apparmor_message_query
      Src: /src/dbus-broker/src/util/apparmor.c:555,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/apparmor.c:562,1
    - Dst: bus_apparmor_log
      Src: /src/dbus-broker/src/util/apparmor.c:565,1
    - Dst: string_equal
      Src: /src/dbus-broker/src/util/apparmor.c:577,1
    - Dst: string_equal
      Src: /src/dbus-broker/src/util/apparmor.c:578,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 27
    argCount: 9
    argNames:
    - registry
    - check_send
    - sender_context
    - receiver_context
    - subject
    - subject_id
    - path
    - interface
    - method
    argTypes:
    - BusAppArmorRegistry*
    - bool
    - char*
    - char*
    - NameSet*
    - uint64_t
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 514
    functionDepth: 4
    functionLinenumber: 514
    functionLinenumberEnd: 582
    functionName: bus_apparmor_check_xmit
    functionSourceFile: /src/dbus-broker/src/util/apparmor.c
    functionUses: 0
    functionsReached:
    - aa_splitcon
    - apparmor_message_query
    - error_origin
    - _c_cleanup_
    - is_unconfined
    - strdup
    - string_equal
    - bus_apparmor_log
    - error_fold
    linkageType: ''
    returnType: int
    signature: "int bus_apparmor_check_xmit(BusAppArmorRegistry *registry,\n                            bool
      check_send,\n                            const char *sender_context,\n                            const
      char *receiver_context,\n                            NameSet *subject,\n                            uint64_t
      subject_id,\n                            const char *path,\n                            const
      char *interface,\n                            const char *method)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/apparmor.c:597,1
    - Dst: strdup
      Src: /src/dbus-broker/src/util/apparmor.c:605,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:607,1
    - Dst: aa_splitcon
      Src: /src/dbus-broker/src/util/apparmor.c:609,1
    - Dst: is_unconfined
      Src: /src/dbus-broker/src/util/apparmor.c:611,1
    - Dst: build_eavesdrop_query
      Src: /src/dbus-broker/src/util/apparmor.c:614,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/apparmor.c:621,1
    - Dst: aa_query_label
      Src: /src/dbus-broker/src/util/apparmor.c:623,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/apparmor.c:625,1
    - Dst: c_errno
      Src: /src/dbus-broker/src/util/apparmor.c:625,1
    - Dst: bus_apparmor_log
      Src: /src/dbus-broker/src/util/apparmor.c:628,1
    - Dst: string_equal
      Src: /src/dbus-broker/src/util/apparmor.c:637,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 2
    argNames:
    - registry
    - context
    argTypes:
    - BusAppArmorRegistry*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 641
      start: 594
    functionDepth: 2
    functionLinenumber: 594
    functionLinenumberEnd: 641
    functionName: bus_apparmor_check_eavesdrop
    functionSourceFile: /src/dbus-broker/src/util/apparmor.c
    functionUses: 0
    functionsReached:
    - aa_splitcon
    - build_eavesdrop_query
    - error_origin
    - aa_query_label
    - _c_cleanup_
    - is_unconfined
    - strdup
    - string_equal
    - bus_apparmor_log
    - c_errno
    - error_fold
    linkageType: ''
    returnType: int
    signature: "int bus_apparmor_check_eavesdrop(BusAppArmorRegistry *registry,\n
      \                                const char *context)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _id
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 33
    functionName: METRICS_INIT
    functionSourceFile: /src/dbus-broker/src/util/metrics.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: METRICS_INIT(_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/dbus-broker/src/util/fdlist.c:32,1
    - Dst: CMSG_SPACE
      Src: /src/dbus-broker/src/util/fdlist.c:32,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/fdlist.c:34,1
    - Dst: CMSG_LEN
      Src: /src/dbus-broker/src/util/fdlist.c:37,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/util/fdlist.c:40,1
    - Dst: fdlist_data
      Src: /src/dbus-broker/src/util/fdlist.c:40,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - listp
    - fds
    - n_fds
    argTypes:
    - FDList**
    - int*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 44
    functionName: fdlist_new_with_fds
    functionSourceFile: /src/dbus-broker/src/util/fdlist.c
    functionUses: 4
    functionsReached:
    - c_memcpy
    - CMSG_SPACE
    - error_origin
    - fdlist_data
    - CMSG_LEN
    - malloc
    linkageType: ''
    returnType: int
    signature: int fdlist_new_with_fds(FDList **listp, const int *fds, size_t n_fds)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fdlist_new_with_fds
      Src: /src/dbus-broker/src/util/fdlist.c:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - listp
    - fds
    - n_fds
    argTypes:
    - FDList**
    - int*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 57
    functionDepth: 2
    functionLinenumber: 57
    functionLinenumberEnd: 65
    functionName: fdlist_new_consume_fds
    functionSourceFile: /src/dbus-broker/src/util/fdlist.c
    functionUses: 2
    functionsReached:
    - fdlist_new_with_fds
    linkageType: ''
    returnType: int
    signature: int fdlist_new_consume_fds(FDList **listp, const int *fds, size_t n_fds)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/fdlist.c:80,1
    - Dst: fdlist_new_with_fds
      Src: /src/dbus-broker/src/util/fdlist.c:84,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/fdlist.c:86,1
    - Dst: fdlist_data
      Src: /src/dbus-broker/src/util/fdlist.c:88,1
    - Dst: fcntl
      Src: /src/dbus-broker/src/util/fdlist.c:90,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/fdlist.c:95,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/fdlist.c:97,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - listp
    - fds
    - n_fds
    argTypes:
    - FDList**
    - int*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 79
    functionDepth: 2
    functionLinenumber: 79
    functionLinenumberEnd: 106
    functionName: fdlist_new_dup_fds
    functionSourceFile: /src/dbus-broker/src/util/fdlist.c
    functionUses: 1
    functionsReached:
    - c_close
    - fdlist_new_with_fds
    - error_origin
    - fcntl
    - fdlist_data
    - _c_cleanup_
    - error_trace
    linkageType: ''
    returnType: int
    signature: int fdlist_new_dup_fds(FDList **listp, const int *fds, size_t n_fds)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fdlist_data
      Src: /src/dbus-broker/src/util/fdlist.c:125,1
    - Dst: fdlist_count
      Src: /src/dbus-broker/src/util/fdlist.c:126,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/fdlist.c:130,1
    - Dst: free
      Src: /src/dbus-broker/src/util/fdlist.c:132,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - list
    argTypes:
    - FDList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 136
    functionName: fdlist_free
    functionSourceFile: /src/dbus-broker/src/util/fdlist.c
    functionUses: 7
    functionsReached:
    - fdlist_data
    - c_close
    - free
    - fdlist_count
    linkageType: ''
    returnType: FDList
    signature: FDList *fdlist_free(FDList *list)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fdlist_data
      Src: /src/dbus-broker/src/util/fdlist.c:153,1
    - Dst: fdlist_count
      Src: /src/dbus-broker/src/util/fdlist.c:154,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/fdlist.c:156,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/fdlist.c:160,1
    - Dst: CMSG_LEN
      Src: /src/dbus-broker/src/util/fdlist.c:162,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - list
    - n_fds
    argTypes:
    - FDList*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 163
    functionName: fdlist_truncate
    functionSourceFile: /src/dbus-broker/src/util/fdlist.c
    functionUses: 3
    functionsReached:
    - c_close
    - fdlist_count
    - fdlist_data
    - CMSG_LEN
    - c_assert
    linkageType: ''
    returnType: void
    signature: void fdlist_truncate(FDList *list, size_t n_fds)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fdlist_data
      Src: /src/dbus-broker/src/util/fdlist.c:181,1
    - Dst: fdlist_count
      Src: /src/dbus-broker/src/util/fdlist.c:183,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - list
    - index
    argTypes:
    - FDList*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 189
    functionName: fdlist_steal
    functionSourceFile: /src/dbus-broker/src/util/fdlist.c
    functionUses: 0
    functionsReached:
    - fdlist_data
    - fdlist_count
    linkageType: ''
    returnType: int
    signature: int fdlist_steal(FDList *list, size_t index)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - log
    argTypes:
    - Log*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 109
    functionName: log_init
    functionSourceFile: /src/dbus-broker/src/util/log.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void log_init(Log *log)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/log.c:121,1
    - Dst: log_init
      Src: /src/dbus-broker/src/util/log.c:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - log
    - stderr_fd
    argTypes:
    - Log*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 127
    functionName: log_init_stderr
    functionSourceFile: /src/dbus-broker/src/util/log.c
    functionUses: 0
    functionsReached:
    - c_assert
    - log_init
    linkageType: ''
    returnType: void
    signature: void log_init_stderr(Log *log, int stderr_fd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/log.c:138,1
    - Dst: log_init
      Src: /src/dbus-broker/src/util/log.c:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - log
    - journal_fd
    argTypes:
    - Log*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 144
    functionName: log_init_journal
    functionSourceFile: /src/dbus-broker/src/util/log.c
    functionUses: 0
    functionsReached:
    - c_assert
    - log_init
    linkageType: ''
    returnType: void
    signature: void log_init_journal(Log *log, int journal_fd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/log.c:155,1
    - Dst: log_init
      Src: /src/dbus-broker/src/util/log.c:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - log
    - journal_fd
    argTypes:
    - Log*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 161
    functionName: log_init_journal_consume
    functionSourceFile: /src/dbus-broker/src/util/log.c
    functionUses: 1
    functionsReached:
    - c_assert
    - log_init
    linkageType: ''
    returnType: void
    signature: void log_init_journal_consume(Log *log, int journal_fd)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: munmap
      Src: /src/dbus-broker/src/util/log.c:174,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/log.c:175,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/log.c:177,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - log
    argTypes:
    - Log*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 179
    functionName: log_deinit
    functionSourceFile: /src/dbus-broker/src/util/log.c
    functionUses: 1
    functionsReached:
    - munmap
    - c_close
    linkageType: ''
    returnType: void
    signature: void log_deinit(Log *log)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - log
    argTypes:
    - Log*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 193
    functionName: log_get_fd
    functionSourceFile: /src/dbus-broker/src/util/log.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int log_get_fd(Log *log)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - log
    - lossy
    argTypes:
    - Log*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 212
    functionName: log_set_lossy
    functionSourceFile: /src/dbus-broker/src/util/log.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void log_set_lossy(Log *log, bool lossy)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/log.c:215,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/log.c:224,1
    - Dst: misc_memfd
      Src: /src/dbus-broker/src/util/log.c:231,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/log.c:242,1
    - Dst: mmap
      Src: /src/dbus-broker/src/util/log.c:247,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/log.c:249,1
    - Dst: ftruncate
      Src: /src/dbus-broker/src/util/log.c:253,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/log.c:255,1
    - Dst: mmap
      Src: /src/dbus-broker/src/util/log.c:259,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/log.c:261,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 35
    argCount: 1
    argNames:
    - log
    argTypes:
    - Log*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 214
    functionDepth: 2
    functionLinenumber: 214
    functionLinenumberEnd: 270
    functionName: log_alloc
    functionSourceFile: /src/dbus-broker/src/util/log.c
    functionUses: 0
    functionsReached:
    - misc_memfd
    - error_origin
    - mmap
    - _c_cleanup_
    - c_assert
    - ftruncate
    - error_fold
    linkageType: ''
    returnType: bool
    signature: bool log_alloc(Log *log)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: CMSG_SPACE
      Src: /src/dbus-broker/src/util/log.c:274,1
    - Dst: CMSG_LEN
      Src: /src/dbus-broker/src/util/log.c:280,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/util/log.c:283,1
    - Dst: CMSG_DATA
      Src: /src/dbus-broker/src/util/log.c:283,1
    - Dst: sendmsg
      Src: /src/dbus-broker/src/util/log.c:290,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/log.c:292,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/log.c:292,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - destination_fd
    - payload_fd
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 272
    functionDepth: 1
    functionLinenumber: 272
    functionLinenumberEnd: 295
    functionName: log_fd_send
    functionSourceFile: /src/dbus-broker/src/util/log.c
    functionUses: 0
    functionsReached:
    - c_memcpy
    - sendmsg
    - CMSG_SPACE
    - error_origin
    - CMSG_LEN
    - CMSG_DATA
    linkageType: ''
    returnType: int
    signature: int log_fd_send(int destination_fd, int payload_fd)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: send
      Src: /src/dbus-broker/src/util/log.c:301,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/log.c:303,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/log.c:305,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - destination_fd
    - blob
    - n_blob
    argTypes:
    - int
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 312
    functionName: log_loop_send
    functionSourceFile: /src/dbus-broker/src/util/log.c
    functionUses: 0
    functionsReached:
    - error_origin
    - send
    linkageType: ''
    returnType: int
    signature: int log_loop_send(int destination_fd, const void *blob, size_t n_blob)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: ioctl
      Src: /src/dbus-broker/src/util/log.c:338,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/log.c:340,1
    - Dst: send
      Src: /src/dbus-broker/src/util/log.c:347,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/log.c:352,1
    - Dst: log_loop_send
      Src: /src/dbus-broker/src/util/log.c:364,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/log.c:366,1
    - Dst: log_loop_send
      Src: /src/dbus-broker/src/util/log.c:369,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/log.c:371,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/log.c:373,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 1
    argNames:
    - log
    argTypes:
    - Log*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 314
    functionDepth: 2
    functionLinenumber: 314
    functionLinenumberEnd: 377
    functionName: log_stream_send
    functionSourceFile: /src/dbus-broker/src/util/log.c
    functionUses: 0
    functionsReached:
    - log_loop_send
    - strlen
    - ioctl
    - error_origin
    - error_trace
    - send
    linkageType: ''
    returnType: int
    signature: int log_stream_send(Log *log)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/log.c:380,1
    - Dst: send
      Src: /src/dbus-broker/src/util/log.c:384,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/log.c:402,1
    - Dst: munmap
      Src: /src/dbus-broker/src/util/log.c:431,1
    - Dst: ftruncate
      Src: /src/dbus-broker/src/util/log.c:434,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/log.c:436,1
    - Dst: misc_memfd_add_seals
      Src: /src/dbus-broker/src/util/log.c:438,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/log.c:444,1
    - Dst: log_fd_send
      Src: /src/dbus-broker/src/util/log.c:446,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/log.c:448,1
    - Dst: send
      Src: /src/dbus-broker/src/util/log.c:454,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/log.c:456,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/log.c:459,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 41
    argCount: 1
    argNames:
    - log
    argTypes:
    - Log*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 379
    functionDepth: 2
    functionLinenumber: 379
    functionLinenumberEnd: 463
    functionName: log_journal_send
    functionSourceFile: /src/dbus-broker/src/util/log.c
    functionUses: 0
    functionsReached:
    - strlen
    - munmap
    - error_origin
    - log_fd_send
    - misc_memfd_add_seals
    - _c_cleanup_
    - error_trace
    - ftruncate
    - send
    linkageType: ''
    returnType: int
    signature: int log_journal_send(Log *log)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: log_appendf
      Src: /src/dbus-broker/src/util/log.c:480,1
    - Dst: log_vappendf
      Src: /src/dbus-broker/src/util/log.c:481,1
    - Dst: log_appends
      Src: /src/dbus-broker/src/util/log.c:482,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/log.c:486,1
    - Dst: log_stream_send
      Src: /src/dbus-broker/src/util/log.c:488,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/log.c:492,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - log
    - format
    - args
    argTypes:
    - Log*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 465
    functionDepth: 3
    functionLinenumber: 465
    functionLinenumberEnd: 493
    functionName: log_commit_stderr
    functionSourceFile: /src/dbus-broker/src/util/log.c
    functionUses: 0
    functionsReached:
    - log_appendf
    - log_stream_send
    - log_vappendf
    - log_appends
    - error_trace
    linkageType: ''
    returnType: int
    signature: int log_commit_stderr(Log *log, const char *format, va_list args)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: log_appends
      Src: /src/dbus-broker/src/util/log.c:507,1
    - Dst: log_vappendf
      Src: /src/dbus-broker/src/util/log.c:508,1
    - Dst: log_appends
      Src: /src/dbus-broker/src/util/log.c:509,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/log.c:513,1
    - Dst: log_journal_send
      Src: /src/dbus-broker/src/util/log.c:515,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/log.c:519,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - log
    - format
    - args
    argTypes:
    - Log*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 495
    functionDepth: 3
    functionLinenumber: 495
    functionLinenumberEnd: 520
    functionName: log_commit_journal
    functionSourceFile: /src/dbus-broker/src/util/log.c
    functionUses: 0
    functionsReached:
    - log_journal_send
    - log_appends
    - error_trace
    - log_vappendf
    linkageType: ''
    returnType: int
    signature: int log_commit_journal(Log *log, const char *format, va_list args)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/log.c:548,1
    - Dst: log_commit_stderr
      Src: /src/dbus-broker/src/util/log.c:551,1
    - Dst: log_commit_journal
      Src: /src/dbus-broker/src/util/log.c:554,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/log.c:557,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - log
    - format
    - args
    argTypes:
    - Log*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 543
    functionDepth: 4
    functionLinenumber: 543
    functionLinenumberEnd: 566
    functionName: log_vcommitf
    functionSourceFile: /src/dbus-broker/src/util/log.c
    functionUses: 1
    functionsReached:
    - log_commit_stderr
    - error_trace
    - error_origin
    - log_commit_journal
    linkageType: ''
    returnType: int
    signature: int log_vcommitf(Log *log, const char *format, va_list args)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: log_alloc
      Src: /src/dbus-broker/src/util/log.c:580,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/util/log.c:588,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - log
    - data
    - n_data
    argTypes:
    - Log*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 579
    functionDepth: 3
    functionLinenumber: 579
    functionLinenumberEnd: 590
    functionName: log_append
    functionSourceFile: /src/dbus-broker/src/util/log.c
    functionUses: 1
    functionsReached:
    - c_memcpy
    - log_alloc
    linkageType: ''
    returnType: void
    signature: void log_append(Log *log, const void *data, size_t n_data)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: log_alloc
      Src: /src/dbus-broker/src/util/log.c:604,1
    - Dst: vsnprintf
      Src: /src/dbus-broker/src/util/log.c:607,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - log
    - format
    - args
    argTypes:
    - Log*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 601
    functionDepth: 3
    functionLinenumber: 601
    functionLinenumberEnd: 617
    functionName: log_vappendf
    functionSourceFile: /src/dbus-broker/src/util/log.c
    functionUses: 3
    functionsReached:
    - vsnprintf
    - log_alloc
    linkageType: ''
    returnType: void
    signature: void log_vappendf(Log *log, const char *format, va_list args)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: LOG_MAKEPRI
      Src: /src/dbus-broker/src/util/log.c:645,1
    - Dst: LOG_FAC
      Src: /src/dbus-broker/src/util/log.c:645,1
    - Dst: LOG_PRI
      Src: /src/dbus-broker/src/util/log.c:646,1
    - Dst: log_alloc
      Src: /src/dbus-broker/src/util/log.c:659,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/util/log.c:660,1
    - Dst: LOG_PRI
      Src: /src/dbus-broker/src/util/log.c:669,1
    - Dst: LOG_FAC
      Src: /src/dbus-broker/src/util/log.c:670,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/util/log.c:678,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 7
    argNames:
    - log
    - level
    - error
    - id
    - file
    - line
    - func
    argTypes:
    - Log*
    - int
    - int
    - char*
    - char*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 680
      start: 632
    functionDepth: 3
    functionLinenumber: 632
    functionLinenumberEnd: 680
    functionName: log_append_common
    functionSourceFile: /src/dbus-broker/src/util/log.c
    functionUses: 0
    functionsReached:
    - log_appendf
    - LOG_MAKEPRI
    - LOG_PRI
    - LOG_FAC
    - log_alloc
    linkageType: ''
    returnType: void
    signature: "void log_append_common(Log *log,\n                       int level,\n
      \                      int error,\n                       const char *id,\n
      \                      const char *file,\n                       int line,\n
      \                      const char *func)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: bus_apparmor_is_enabled
      Src: /src/dbus-broker/src/util/test-apparmor.c:14,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-apparmor.c:15,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16
      start: 10
    functionDepth: 0
    functionLinenumber: 10
    functionLinenumberEnd: 16
    functionName: test_basic
    functionSourceFile: /src/dbus-broker/src/util/test-apparmor.c
    functionUses: 2
    functionsReached:
    - c_assert
    - bus_apparmor_is_enabled
    linkageType: ''
    returnType: void
    signature: void test_basic(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_basic
      Src: /src/dbus-broker/src/util/test-apparmor.c:19,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 21
    functionName: main
    functionSourceFile: /src/dbus-broker/src/util/test-apparmor.c
    functionUses: 0
    functionsReached:
    - test_basic
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/fs.c:28,1
    - Dst: calloc
      Src: /src/dbus-broker/src/util/fs.c:33,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/fs.c:35,1
    - Dst: calloc
      Src: /src/dbus-broker/src/util/fs.c:37,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/fs.c:39,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - listp
    - n_allocated
    argTypes:
    - FsDirlist**
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 46
    functionName: fs_dirlist_new
    functionSourceFile: /src/dbus-broker/src/util/fs.c
    functionUses: 0
    functionsReached:
    - _c_cleanup_
    - error_origin
    - calloc
    linkageType: ''
    returnType: int
    signature: int fs_dirlist_new(FsDirlist **listp, size_t n_allocated)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_free
      Src: /src/dbus-broker/src/util/fs.c:62,1
    - Dst: c_free
      Src: /src/dbus-broker/src/util/fs.c:63,1
    - Dst: c_free
      Src: /src/dbus-broker/src/util/fs.c:64,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - list
    argTypes:
    - FsDirlist*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 68
    functionName: fs_dirlist_free
    functionSourceFile: /src/dbus-broker/src/util/fs.c
    functionUses: 0
    functionsReached:
    - c_free
    linkageType: ''
    returnType: FsDirlist
    signature: FsDirlist *fs_dirlist_free(FsDirlist *list)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/fs.c:86,1
    - Dst: strnlen
      Src: /src/dbus-broker/src/util/fs.c:90,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/fs.c:91,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/fs.c:95,1
    - Dst: __builtin_mul_overflow
      Src: /src/dbus-broker/src/util/fs.c:97,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/fs.c:98,1
    - Dst: __builtin_mul_overflow
      Src: /src/dbus-broker/src/util/fs.c:99,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/fs.c:100,1
    - Dst: realloc
      Src: /src/dbus-broker/src/util/fs.c:102,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/fs.c:104,1
    - Dst: malloc
      Src: /src/dbus-broker/src/util/fs.c:113,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/fs.c:115,1
    - Dst: memcpy
      Src: /src/dbus-broker/src/util/fs.c:117,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - list
    - de
    argTypes:
    - FsDirlist*
    - struct dirent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 121
    functionName: fs_dirlist_push
    functionSourceFile: /src/dbus-broker/src/util/fs.c
    functionUses: 0
    functionsReached:
    - strnlen
    - error_origin
    - __builtin_mul_overflow
    - realloc
    - memcpy
    - c_assert
    - malloc
    linkageType: ''
    returnType: int
    signature: int fs_dirlist_push(FsDirlist *list, const struct dirent *de)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/dbus-broker/src/util/fs.c:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - va
    - vb
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: fs_dirlist_cmp_p
    functionSourceFile: /src/dbus-broker/src/util/fs.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: int
    signature: int fs_dirlist_cmp_p(const void *va, const void *vb)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: qsort
      Src: /src/dbus-broker/src/util/fs.c:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - list
    argTypes:
    - FsDirlist*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 146
    functionName: fs_dirlist_sort
    functionSourceFile: /src/dbus-broker/src/util/fs.c
    functionUses: 0
    functionsReached:
    - qsort
    linkageType: ''
    returnType: void
    signature: void fs_dirlist_sort(FsDirlist *list)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/fs.c:166,1
    - Dst: fs_dirlist_new
      Src: /src/dbus-broker/src/util/fs.c:170,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/fs.c:172,1
    - Dst: readdir
      Src: /src/dbus-broker/src/util/fs.c:175,1
    - Dst: readdir
      Src: /src/dbus-broker/src/util/fs.c:177,1
    - Dst: string_equal
      Src: /src/dbus-broker/src/util/fs.c:179,1
    - Dst: string_equal
      Src: /src/dbus-broker/src/util/fs.c:181,1
    - Dst: fs_dirlist_push
      Src: /src/dbus-broker/src/util/fs.c:186,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/fs.c:188,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/fs.c:191,1
    - Dst: fs_dirlist_sort
      Src: /src/dbus-broker/src/util/fs.c:201,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 22
    argCount: 3
    argNames:
    - dir
    - listp
    - flags
    argTypes:
    - DIR*
    - FsDirlist**
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 165
    functionDepth: 2
    functionLinenumber: 165
    functionLinenumberEnd: 206
    functionName: fs_dir_list
    functionSourceFile: /src/dbus-broker/src/util/fs.c
    functionUses: 2
    functionsReached:
    - fs_dirlist_sort
    - readdir
    - error_origin
    - _c_cleanup_
    - fs_dirlist_push
    - fs_dirlist_new
    - string_equal
    - error_fold
    linkageType: ''
    returnType: int
    signature: int fs_dir_list(DIR *dir, FsDirlist **listp, unsigned int flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - r
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 29
    functionName: error_origin
    functionSourceFile: /src/dbus-broker/src/util/error.h
    functionUses: 115
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: error_origin(r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - r
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 30
    functionName: ERROR_ORIGIN
    functionSourceFile: /src/dbus-broker/src/util/error.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ERROR_ORIGIN(r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - r
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 41
    functionName: error_trace
    functionSourceFile: /src/dbus-broker/src/util/error.h
    functionUses: 51
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: error_trace(r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - r
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: ERROR_TRACE
    functionSourceFile: /src/dbus-broker/src/util/error.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ERROR_TRACE(r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - r
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 53
    functionName: error_fold
    functionSourceFile: /src/dbus-broker/src/util/error.h
    functionUses: 55
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: error_fold(r)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - r
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 54
    functionName: ERROR_FOLD
    functionSourceFile: /src/dbus-broker/src/util/error.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ERROR_FOLD(r)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ioctl
      Src: /src/dbus-broker/src/util/test-dispatch.c:22,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:23,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:24,1
    - Dst: ioctl
      Src: /src/dbus-broker/src/util/test-dispatch.c:26,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:27,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - s
    - has_in
    - has_out
    argTypes:
    - int
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 29
    functionName: q_assert
    functionSourceFile: /src/dbus-broker/src/util/test-dispatch.c
    functionUses: 0
    functionsReached:
    - c_assert
    - ioctl
    linkageType: ''
    returnType: void
    signature: void q_assert(int s, bool has_in, bool has_out)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-dispatch.c:45,1
    - Dst: DISPATCH_CONTEXT_NULL
      Src: /src/dbus-broker/src/util/test-dispatch.c:45,1
    - Dst: DISPATCH_FILE_NULL
      Src: /src/dbus-broker/src/util/test-dispatch.c:46,1
    - Dst: dispatch_context_init
      Src: /src/dbus-broker/src/util/test-dispatch.c:52,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:53,1
    - Dst: socketpair
      Src: /src/dbus-broker/src/util/test-dispatch.c:55,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:56,1
    - Dst: dispatch_file_init
      Src: /src/dbus-broker/src/util/test-dispatch.c:58,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:59,1
    - Dst: dispatch_file_select
      Src: /src/dbus-broker/src/util/test-dispatch.c:61,1
    - Dst: q_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:65,1
    - Dst: q_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:66,1
    - Dst: dispatch_context_poll
      Src: /src/dbus-broker/src/util/test-dispatch.c:68,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:69,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:70,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/util/test-dispatch.c:70,1
    - Dst: send
      Src: /src/dbus-broker/src/util/test-dispatch.c:74,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:75,1
    - Dst: q_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:77,1
    - Dst: q_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:78,1
    - Dst: dispatch_context_poll
      Src: /src/dbus-broker/src/util/test-dispatch.c:80,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:81,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:82,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/util/test-dispatch.c:82,1
    - Dst: dispatch_file_clear
      Src: /src/dbus-broker/src/util/test-dispatch.c:86,1
    - Dst: dispatch_context_poll
      Src: /src/dbus-broker/src/util/test-dispatch.c:88,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:89,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:90,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/util/test-dispatch.c:90,1
    - Dst: recv
      Src: /src/dbus-broker/src/util/test-dispatch.c:94,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:95,1
    - Dst: q_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:97,1
    - Dst: q_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:98,1
    - Dst: dispatch_context_poll
      Src: /src/dbus-broker/src/util/test-dispatch.c:100,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:101,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:102,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/util/test-dispatch.c:102,1
    - Dst: send
      Src: /src/dbus-broker/src/util/test-dispatch.c:118,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:119,1
    - Dst: q_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:121,1
    - Dst: q_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:122,1
    - Dst: dispatch_context_poll
      Src: /src/dbus-broker/src/util/test-dispatch.c:124,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:125,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:126,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/util/test-dispatch.c:126,1
    - Dst: dispatch_file_clear
      Src: /src/dbus-broker/src/util/test-dispatch.c:130,1
    - Dst: dispatch_context_poll
      Src: /src/dbus-broker/src/util/test-dispatch.c:132,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:133,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:134,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/util/test-dispatch.c:134,1
    - Dst: shutdown
      Src: /src/dbus-broker/src/util/test-dispatch.c:138,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:139,1
    - Dst: q_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:141,1
    - Dst: q_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:142,1
    - Dst: send
      Src: /src/dbus-broker/src/util/test-dispatch.c:160,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:161,1
    - Dst: dispatch_context_poll
      Src: /src/dbus-broker/src/util/test-dispatch.c:165,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:166,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:167,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/util/test-dispatch.c:167,1
    - Dst: dispatch_file_clear
      Src: /src/dbus-broker/src/util/test-dispatch.c:169,1
    - Dst: dispatch_context_poll
      Src: /src/dbus-broker/src/util/test-dispatch.c:171,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:172,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:173,1
    - Dst: recv
      Src: /src/dbus-broker/src/util/test-dispatch.c:180,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:181,1
    - Dst: q_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:183,1
    - Dst: q_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:184,1
    - Dst: close
      Src: /src/dbus-broker/src/util/test-dispatch.c:188,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:189,1
    - Dst: q_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:192,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:196,1
    - Dst: dispatch_context_poll
      Src: /src/dbus-broker/src/util/test-dispatch.c:199,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:200,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-dispatch.c:201,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/util/test-dispatch.c:201,1
    - Dst: dispatch_file_deinit
      Src: /src/dbus-broker/src/util/test-dispatch.c:205,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/test-dispatch.c:206,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/test-dispatch.c:207,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 78
    argCount: 1
    argNames:
    - run
    argTypes:
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 208
    functionName: test_uds_edge
    functionSourceFile: /src/dbus-broker/src/util/test-dispatch.c
    functionUses: 0
    functionsReached:
    - c_close
    - dispatch_file_select
    - c_list_is_linked
    - socketpair
    - q_assert
    - DISPATCH_FILE_NULL
    - dispatch_file_clear
    - recv
    - close
    - dispatch_file_deinit
    - dispatch_file_init
    - _c_cleanup_
    - shutdown
    - dispatch_context_init
    - c_assert
    - dispatch_context_poll
    - DISPATCH_CONTEXT_NULL
    - send
    linkageType: ''
    returnType: void
    signature: void test_uds_edge(unsigned int run)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_uds_edge
      Src: /src/dbus-broker/src/util/test-dispatch.c:211,1
    - Dst: test_uds_edge
      Src: /src/dbus-broker/src/util/test-dispatch.c:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 210
    functionDepth: 3
    functionLinenumber: 210
    functionLinenumberEnd: 214
    functionName: main
    functionSourceFile: /src/dbus-broker/src/util/test-dispatch.c
    functionUses: 0
    functionsReached:
    - test_uds_edge
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: geteuid
      Src: /src/dbus-broker/src/util/audit.c:44,1
    - Dst: setgroups
      Src: /src/dbus-broker/src/util/audit.c:49,1
    - Dst: setgid
      Src: /src/dbus-broker/src/util/audit.c:51,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/audit.c:53,1
    - Dst: setuid
      Src: /src/dbus-broker/src/util/audit.c:55,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/audit.c:57,1
    - Dst: capng_have_capability
      Src: /src/dbus-broker/src/util/audit.c:61,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/audit.c:63,1
    - Dst: capng_clear
      Src: /src/dbus-broker/src/util/audit.c:69,1
    - Dst: capng_update
      Src: /src/dbus-broker/src/util/audit.c:72,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/audit.c:76,1
    - Dst: capng_change_id
      Src: /src/dbus-broker/src/util/audit.c:79,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/audit.c:81,1
    - Dst: prctl
      Src: /src/dbus-broker/src/util/audit.c:84,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/audit.c:86,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 2
    argNames:
    - uid
    - gid
    argTypes:
    - uint32_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 91
    functionName: util_audit_drop_permissions
    functionSourceFile: /src/dbus-broker/src/util/audit.c
    functionUses: 1
    functionsReached:
    - capng_update
    - geteuid
    - setuid
    - capng_clear
    - capng_have_capability
    - error_origin
    - prctl
    - capng_change_id
    - setgroups
    - setgid
    linkageType: ''
    returnType: int
    signature: int util_audit_drop_permissions(uint32_t uid, uint32_t gid)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: audit_log_user_avc_message
      Src: /src/dbus-broker/src/util/audit.c:113,1
    - Dst: audit_log_user_message
      Src: /src/dbus-broker/src/util/audit.c:124,1
    - Dst: audit_log_user_message
      Src: /src/dbus-broker/src/util/audit.c:135,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/audit.c:146,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/audit.c:150,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 3
    argNames:
    - type
    - message
    - uid
    argTypes:
    - int
    - char*
    - uid_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 153
    functionName: util_audit_log
    functionSourceFile: /src/dbus-broker/src/util/audit.c
    functionUses: 1
    functionsReached:
    - error_origin
    - audit_log_user_message
    - audit_log_user_avc_message
    linkageType: ''
    returnType: int
    signature: int util_audit_log(int type, const char *message, uid_t uid)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/audit.c:167,1
    - Dst: capng_have_capability
      Src: /src/dbus-broker/src/util/audit.c:169,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/audit.c:177,1
    - Dst: audit_open
      Src: /src/dbus-broker/src/util/audit.c:179,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/audit.c:181,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 186
    functionName: util_audit_init_global
    functionSourceFile: /src/dbus-broker/src/util/audit.c
    functionUses: 0
    functionsReached:
    - c_assert
    - capng_have_capability
    - error_origin
    - audit_open
    linkageType: ''
    returnType: int
    signature: int util_audit_init_global(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: audit_close
      Src: /src/dbus-broker/src/util/audit.c:199,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 201
    functionName: util_audit_deinit_global
    functionSourceFile: /src/dbus-broker/src/util/audit.c
    functionUses: 0
    functionsReached:
    - audit_close
    linkageType: ''
    returnType: void
    signature: void util_audit_deinit_global(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - enabledp
    argTypes:
    - bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 27
    functionName: bus_apparmor_is_enabled
    functionSourceFile: /src/dbus-broker/src/util/apparmor-fallback.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int bus_apparmor_is_enabled(bool *enabledp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - supportedp
    argTypes:
    - bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: bus_apparmor_dbus_supported
    functionSourceFile: /src/dbus-broker/src/util/apparmor-fallback.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int bus_apparmor_dbus_supported(bool *supportedp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - registryp
    - fallback_context
    argTypes:
    - struct BusAppArmorRegistry**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: bus_apparmor_registry_new
    functionSourceFile: /src/dbus-broker/src/util/apparmor-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int bus_apparmor_registry_new(struct BusAppArmorRegistry **registryp,
      const char *fallback_context)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - registry
    argTypes:
    - BusAppArmorRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: bus_apparmor_registry_ref
    functionSourceFile: /src/dbus-broker/src/util/apparmor-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusAppArmorRegistry
    signature: BusAppArmorRegistry *bus_apparmor_registry_ref(BusAppArmorRegistry
      *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - registry
    argTypes:
    - BusAppArmorRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: bus_apparmor_registry_unref
    functionSourceFile: /src/dbus-broker/src/util/apparmor-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BusAppArmorRegistry
    signature: BusAppArmorRegistry *bus_apparmor_registry_unref(BusAppArmorRegistry
      *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - registry
    - bustype
    argTypes:
    - BusAppArmorRegistry*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: bus_apparmor_set_bus_type
    functionSourceFile: /src/dbus-broker/src/util/apparmor-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int bus_apparmor_set_bus_type(BusAppArmorRegistry *registry, const
      char *bustype)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - registry
    - owner_context
    - name
    argTypes:
    - struct BusAppArmorRegistry*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: bus_apparmor_check_own
    functionSourceFile: /src/dbus-broker/src/util/apparmor-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int bus_apparmor_check_own(struct BusAppArmorRegistry *registry, const
      char *owner_context,\n                           const char *name)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 9
    argNames:
    - registry
    - check_send
    - sender_context
    - receiver_context
    - subject
    - subject_id
    - path
    - interface
    - method
    argTypes:
    - BusAppArmorRegistry*
    - bool
    - char*
    - char*
    - NameSet*
    - uint64_t
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 70
    functionName: bus_apparmor_check_xmit
    functionSourceFile: /src/dbus-broker/src/util/apparmor-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int bus_apparmor_check_xmit(BusAppArmorRegistry *registry, bool check_send,\n
      \                           const char *sender_context, const char *receiver_context,\n
      \                           NameSet *subject, uint64_t subject_id,\n                            const
      char *path, const char *interface, const char *method)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - registry
    - context
    argTypes:
    - BusAppArmorRegistry*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 74
    functionName: bus_apparmor_check_eavesdrop
    functionSourceFile: /src/dbus-broker/src/util/apparmor-fallback.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int bus_apparmor_check_eavesdrop(BusAppArmorRegistry *registry, const
      char *context)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/util/user.c:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - usage
    - parent
    - slot
    argTypes:
    - UserUsage*
    - CRBNode*
    - CRBNode**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionName: user_usage_link
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 0
    functionsReached:
    - c_rbtree_add
    linkageType: ''
    returnType: void
    signature: void user_usage_link(UserUsage *usage, CRBNode *parent, CRBNode **slot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/util/user.c:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - usage
    argTypes:
    - UserUsage*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: user_usage_unlink
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 0
    functionsReached:
    - c_rbnode_unlink
    linkageType: ''
    returnType: void
    signature: void user_usage_unlink(UserUsage *usage)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calloc
      Src: /src/dbus-broker/src/util/user.c:46,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/user.c:48,1
    - Dst: user_ref
      Src: /src/dbus-broker/src/util/user.c:51,1
    - Dst: C_RBNODE_INIT
      Src: /src/dbus-broker/src/util/user.c:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - usagep
    - user
    - uid
    argTypes:
    - UserUsage**
    - User*
    - uid_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 57
    functionName: user_usage_new
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 0
    functionsReached:
    - user_ref
    - error_origin
    - calloc
    - C_RBNODE_INIT
    linkageType: ''
    returnType: int
    signature: int user_usage_new(UserUsage **usagep, User *user, uid_t uid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/util/user.c:60,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/user.c:64,1
    - Dst: user_usage_unlink
      Src: /src/dbus-broker/src/util/user.c:66,1
    - Dst: user_unref
      Src: /src/dbus-broker/src/util/user.c:67,1
    - Dst: free
      Src: /src/dbus-broker/src/util/user.c:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - n_refs
    - userdata
    argTypes:
    - unsigned long*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 59
    functionDepth: 2
    functionLinenumber: 59
    functionLinenumberEnd: 69
    functionName: user_usage_free
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 0
    functionsReached:
    - c_container_of
    - free
    - user_unref
    - c_assert
    - user_usage_unlink
    linkageType: ''
    returnType: void
    signature: void user_usage_free(_Atomic unsigned long *n_refs, void *userdata)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ref_inc
      Src: /src/dbus-broker/src/util/user.c:73,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - usage
    argTypes:
    - UserUsage*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 71
    functionDepth: 2
    functionLinenumber: 71
    functionLinenumberEnd: 75
    functionName: user_usage_ref
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 0
    functionsReached:
    - ref_inc
    linkageType: ''
    returnType: UserUsage
    signature: UserUsage *user_usage_ref(UserUsage *usage)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ref_dec
      Src: /src/dbus-broker/src/util/user.c:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - usage
    argTypes:
    - UserUsage*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 81
    functionName: user_usage_unref
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 0
    functionsReached:
    - ref_dec
    linkageType: ''
    returnType: UserUsage
    signature: UserUsage *user_usage_unref(UserUsage *usage)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/util/user.c:86,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - tree
    - k
    - rb
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 95
    functionName: user_usage_compare
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 0
    functionsReached:
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int user_usage_compare(CRBTree *tree, void *k, CRBNode *rb)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - charge
    argTypes:
    - UserCharge*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: user_charge_init
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void user_charge_init(UserCharge *charge)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: user_usage_unref
      Src: /src/dbus-broker/src/util/user.c:120,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/user.c:124,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - charge
    argTypes:
    - UserCharge*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 115
    functionDepth: 3
    functionLinenumber: 115
    functionLinenumberEnd: 126
    functionName: user_charge_deinit
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 8
    functionsReached:
    - c_assert
    - user_usage_unref
    linkageType: ''
    returnType: void
    signature: void user_charge_deinit(UserCharge *charge)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_add_overflow
      Src: /src/dbus-broker/src/util/user.c:152,1
    - Dst: __builtin_mul_overflow
      Src: /src/dbus-broker/src/util/user.c:153,1
    - Dst: __builtin_sub_overflow
      Src: /src/dbus-broker/src/util/user.c:154,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    argCount: 4
    argNames:
    - remaining
    - users
    - share
    - charge
    argTypes:
    - unsigned int
    - unsigned int
    - unsigned int
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 159
    functionName: user_charge_check
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 0
    functionsReached:
    - __builtin_add_overflow
    - __builtin_mul_overflow
    - __builtin_sub_overflow
    linkageType: ''
    returnType: int
    signature: "int user_charge_check(unsigned int remaining,\n                             unsigned
      int users,\n                             unsigned int share,\n                             unsigned
      int charge)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/util/user.c:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - user
    - parent
    - slot
    argTypes:
    - User*
    - CRBNode*
    - CRBNode**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 163
    functionName: user_link
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 0
    functionsReached:
    - c_rbtree_add
    linkageType: ''
    returnType: void
    signature: void user_link(User *user, CRBNode *parent, CRBNode **slot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/util/user.c:166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - user
    argTypes:
    - User*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 167
    functionName: user_unlink
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 0
    functionsReached:
    - c_rbnode_unlink
    linkageType: ''
    returnType: void
    signature: void user_unlink(User *user)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calloc
      Src: /src/dbus-broker/src/util/user.c:173,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/user.c:175,1
    - Dst: C_RBNODE_INIT
      Src: /src/dbus-broker/src/util/user.c:180,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - userp
    - registry
    - uid
    argTypes:
    - User**
    - UserRegistry*
    - uid_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 190
    functionName: user_new
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 0
    functionsReached:
    - C_RBNODE_INIT
    - error_origin
    - calloc
    linkageType: ''
    returnType: int
    signature: int user_new(User **userp, UserRegistry *registry, uid_t uid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/util/user.c:193,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/user.c:196,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/util/user.c:196,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/user.c:197,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/user.c:200,1
    - Dst: user_unlink
      Src: /src/dbus-broker/src/util/user.c:202,1
    - Dst: free
      Src: /src/dbus-broker/src/util/user.c:203,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - n_refs
    - userdata
    argTypes:
    - unsigned long*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 192
    functionDepth: 1
    functionLinenumber: 192
    functionLinenumberEnd: 204
    functionName: user_free
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 0
    functionsReached:
    - c_rbtree_is_empty
    - user_unlink
    - c_container_of
    - free
    - c_assert
    linkageType: ''
    returnType: void
    signature: void user_free(_Atomic unsigned long *n_refs, void *userdata)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/util/user.c:211,1
    - Dst: user_usage_new
      Src: /src/dbus-broker/src/util/user.c:213,1
    - Dst: user_usage_link
      Src: /src/dbus-broker/src/util/user.c:217,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/util/user.c:219,1
    - Dst: user_usage_ref
      Src: /src/dbus-broker/src/util/user.c:220,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - user
    - usagep
    - actor
    argTypes:
    - User*
    - UserUsage**
    - User*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 206
    functionDepth: 3
    functionLinenumber: 206
    functionLinenumberEnd: 225
    functionName: user_ref_usage
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 0
    functionsReached:
    - user_usage_new
    - c_rbtree_find_slot
    - user_usage_link
    - c_container_of
    - user_usage_ref
    linkageType: ''
    returnType: int
    signature: int user_ref_usage(User *user, UserUsage **usagep, User *actor)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/user.c:236,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/util/user.c:238,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/util/user.c:239,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/util/user.c:240,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/util/user.c:241,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/util/user.c:242,1
    - Dst: user_slot_to_string
      Src: /src/dbus-broker/src/util/user.c:242,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/util/user.c:243,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/util/user.c:244,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/util/user.c:246,1
    - Dst: user_slot_to_string
      Src: /src/dbus-broker/src/util/user.c:246,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/user.c:248,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 6
    argNames:
    - log
    - user
    - charge
    - actor
    - slot
    - amount
    argTypes:
    - Log*
    - User*
    - UserCharge*
    - User*
    - size_t
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 227
    functionDepth: 2
    functionLinenumber: 227
    functionLinenumberEnd: 253
    functionName: user_charge_commit_log
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 0
    functionsReached:
    - user_slot_to_string
    - log_appendf
    - log_commitf
    - c_assert
    - error_fold
    linkageType: ''
    returnType: int
    signature: int user_charge_commit_log(Log *log, User *user, UserCharge *charge,
      User *actor, size_t slot, unsigned int amount)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/user.c:283,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/user.c:300,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/user.c:301,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/user.c:302,1
    - Dst: user_usage_ref
      Src: /src/dbus-broker/src/util/user.c:303,1
    - Dst: user_ref_usage
      Src: /src/dbus-broker/src/util/user.c:305,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/user.c:307,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/user.c:310,1
    - Dst: user_charge_check
      Src: /src/dbus-broker/src/util/user.c:319,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/user.c:324,1
    - Dst: user_charge_commit_log
      Src: /src/dbus-broker/src/util/user.c:346,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/user.c:348,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 54
    argCount: 5
    argNames:
    - user
    - charge
    - actor
    - slot
    - amount
    argTypes:
    - User*
    - UserCharge*
    - User*
    - size_t
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 282
    functionDepth: 4
    functionLinenumber: 282
    functionLinenumberEnd: 351
    functionName: user_charge
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 7
    functionsReached:
    - user_charge_commit_log
    - user_charge_check
    - user_ref_usage
    - _c_cleanup_
    - error_trace
    - c_assert
    - user_usage_ref
    linkageType: ''
    returnType: int
    signature: int user_charge(User *user, UserCharge *charge, User *actor, size_t
      slot, unsigned int amount)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/util/user.c:354,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - tree
    - k
    - rb
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 363
    functionName: user_compare
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 0
    functionsReached:
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int user_compare(CRBTree *tree, void *k, CRBNode *rb)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: calloc
      Src: /src/dbus-broker/src/util/user.c:386,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/user.c:388,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/util/user.c:392,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - registry
    - log
    - n_slots
    - maxima
    argTypes:
    - UserRegistry*
    - Log*
    - size_t
    - unsigned int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 377
    functionDepth: 1
    functionLinenumber: 377
    functionLinenumberEnd: 395
    functionName: user_registry_init
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 3
    functionsReached:
    - c_memcpy
    - error_origin
    - calloc
    linkageType: ''
    returnType: int
    signature: "int user_registry_init(UserRegistry *registry,\n                       Log
      *log,\n                       size_t n_slots,\n                       const
      unsigned int *maxima)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/user.c:406,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/util/user.c:406,1
    - Dst: free
      Src: /src/dbus-broker/src/util/user.c:408,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - registry
    argTypes:
    - UserRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 410
    functionName: user_registry_deinit
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 3
    functionsReached:
    - c_assert
    - c_rbtree_is_empty
    - free
    linkageType: ''
    returnType: void
    signature: void user_registry_deinit(UserRegistry *registry)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/util/user.c:428,1
    - Dst: user_new
      Src: /src/dbus-broker/src/util/user.c:430,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/user.c:432,1
    - Dst: user_link
      Src: /src/dbus-broker/src/util/user.c:434,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/util/user.c:436,1
    - Dst: user_ref
      Src: /src/dbus-broker/src/util/user.c:437,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - registry
    - userp
    - uid
    argTypes:
    - UserRegistry*
    - User**
    - uid_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 423
    functionDepth: 2
    functionLinenumber: 423
    functionLinenumberEnd: 442
    functionName: user_registry_ref_user
    functionSourceFile: /src/dbus-broker/src/util/user.c
    functionUses: 3
    functionsReached:
    - user_link
    - c_rbtree_find_slot
    - user_new
    - error_trace
    - c_container_of
    - user_ref
    linkageType: ''
    returnType: int
    signature: int user_registry_ref_user(UserRegistry *registry, User **userp, uid_t
      uid)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionName: DISPATCH_FILE_NULL
    functionSourceFile: /src/dbus-broker/src/util/dispatch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DISPATCH_FILE_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionName: DISPATCH_CONTEXT_NULL
    functionSourceFile: /src/dbus-broker/src/util/dispatch.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DISPATCH_CONTEXT_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - file
    argTypes:
    - DispatchFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 75
    functionName: dispatch_file_events
    functionSourceFile: /src/dbus-broker/src/util/dispatch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t dispatch_file_events(DispatchFile *file)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-peersec.c:24,1
    - Dst: UINT64_C
      Src: /src/dbus-broker/src/util/test-peersec.c:25,1
    - Dst: socket
      Src: /src/dbus-broker/src/util/test-peersec.c:40,1
    - Dst: socket
      Src: /src/dbus-broker/src/util/test-peersec.c:44,1
    - Dst: getauxval
      Src: /src/dbus-broker/src/util/test-peersec.c:58,1
    - Dst: clock_gettime
      Src: /src/dbus-broker/src/util/test-peersec.c:67,1
    - Dst: sprintf
      Src: /src/dbus-broker/src/util/test-peersec.c:81,1
    - Dst: bind
      Src: /src/dbus-broker/src/util/test-peersec.c:83,1
    - Dst: listen
      Src: /src/dbus-broker/src/util/test-peersec.c:87,1
    - Dst: connect
      Src: /src/dbus-broker/src/util/test-peersec.c:94,1
    - Dst: accept4
      Src: /src/dbus-broker/src/util/test-peersec.c:98,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 50
    argCount: 4
    argNames:
    - domain
    - type
    - protocol
    - sv
    argTypes:
    - int
    - int
    - int
    - int[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 108
    functionName: socketpair_fallback
    functionSourceFile: /src/dbus-broker/src/util/test-peersec.c
    functionUses: 0
    functionsReached:
    - bind
    - getauxval
    - connect
    - accept4
    - listen
    - socket
    - _c_cleanup_
    - UINT64_C
    - clock_gettime
    - sprintf
    linkageType: ''
    returnType: int
    signature: int socketpair_fallback(int domain, int type, int protocol, int sv[2])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-peersec.c:116,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-peersec.c:117,1
    - Dst: socketpair
      Src: /src/dbus-broker/src/util/test-peersec.c:120,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-peersec.c:121,1
    - Dst: write
      Src: /src/dbus-broker/src/util/test-peersec.c:126,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-peersec.c:127,1
    - Dst: read
      Src: /src/dbus-broker/src/util/test-peersec.c:129,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-peersec.c:130,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-peersec.c:131,1
    - Dst: memcmp
      Src: /src/dbus-broker/src/util/test-peersec.c:131,1
    - Dst: sockopt_get_peersec
      Src: /src/dbus-broker/src/util/test-peersec.c:133,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-peersec.c:134,1
    - Dst: sockopt_get_peersec
      Src: /src/dbus-broker/src/util/test-peersec.c:136,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-peersec.c:137,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/util/test-peersec.c:139,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/util/test-peersec.c:140,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-peersec.c:145,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-peersec.c:146,1
    - Dst: socketpair_fallback
      Src: /src/dbus-broker/src/util/test-peersec.c:149,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-peersec.c:150,1
    - Dst: write
      Src: /src/dbus-broker/src/util/test-peersec.c:155,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-peersec.c:156,1
    - Dst: read
      Src: /src/dbus-broker/src/util/test-peersec.c:158,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-peersec.c:159,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-peersec.c:160,1
    - Dst: memcmp
      Src: /src/dbus-broker/src/util/test-peersec.c:160,1
    - Dst: sockopt_get_peersec
      Src: /src/dbus-broker/src/util/test-peersec.c:162,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-peersec.c:163,1
    - Dst: sockopt_get_peersec
      Src: /src/dbus-broker/src/util/test-peersec.c:165,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-peersec.c:166,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/util/test-peersec.c:168,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/util/test-peersec.c:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 37
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 110
    functionDepth: 2
    functionLinenumber: 110
    functionLinenumberEnd: 171
    functionName: test_peersec
    functionSourceFile: /src/dbus-broker/src/util/test-peersec.c
    functionUses: 0
    functionsReached:
    - socketpair
    - read
    - _c_cleanup_
    - write
    - sockopt_get_peersec
    - c_assert
    - socketpair_fallback
    - fprintf
    - memcmp
    linkageType: ''
    returnType: void
    signature: void test_peersec(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_peersec
      Src: /src/dbus-broker/src/util/test-peersec.c:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 173
    functionDepth: 3
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionName: main
    functionSourceFile: /src/dbus-broker/src/util/test-peersec.c
    functionUses: 0
    functionsReached:
    - test_peersec
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nsec_now
      Src: /src/dbus-broker/src/util/test-nsec.c:13,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-nsec.c:14,1
    - Dst: nsec_sleep
      Src: /src/dbus-broker/src/util/test-nsec.c:17,1
    - Dst: nsec_now
      Src: /src/dbus-broker/src/util/test-nsec.c:19,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-nsec.c:20,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-nsec.c:21,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-nsec.c:22,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 10
    functionDepth: 1
    functionLinenumber: 10
    functionLinenumberEnd: 23
    functionName: test_nsec
    functionSourceFile: /src/dbus-broker/src/util/test-nsec.c
    functionUses: 0
    functionsReached:
    - nsec_now
    - nsec_sleep
    - c_assert
    linkageType: ''
    returnType: void
    signature: void test_nsec(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_nsec
      Src: /src/dbus-broker/src/util/test-nsec.c:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 2
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: main
    functionSourceFile: /src/dbus-broker/src/util/test-nsec.c
    functionUses: 0
    functionsReached:
    - test_nsec
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: misc_memfd
      Src: /src/dbus-broker/src/util/test-misc.c:23,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/test-misc.c:30,1
    - Dst: misc_memfd
      Src: /src/dbus-broker/src/util/test-misc.c:33,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/test-misc.c:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 16
    functionDepth: 2
    functionLinenumber: 16
    functionLinenumberEnd: 44
    functionName: memfd_seals
    functionSourceFile: /src/dbus-broker/src/util/test-misc.c
    functionUses: 0
    functionsReached:
    - misc_memfd
    - c_close
    linkageType: ''
    returnType: unsigned int
    signature: unsigned int memfd_seals(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memfd_seals
      Src: /src/dbus-broker/src/util/test-misc.c:95,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/util/test-misc.c:97,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-misc.c:98,1
    - Dst: misc_memfd
      Src: /src/dbus-broker/src/util/test-misc.c:100,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-misc.c:102,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-misc.c:105,1
    - Dst: misc_memfd_get_seals
      Src: /src/dbus-broker/src/util/test-misc.c:107,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-misc.c:108,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-misc.c:109,1
    - Dst: fstat
      Src: /src/dbus-broker/src/util/test-misc.c:111,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-misc.c:112,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-misc.c:113,1
    - Dst: c_close
      Src: /src/dbus-broker/src/util/test-misc.c:115,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 46
    functionDepth: 3
    functionLinenumber: 46
    functionLinenumberEnd: 117
    functionName: test_memfd
    functionSourceFile: /src/dbus-broker/src/util/test-misc.c
    functionUses: 0
    functionsReached:
    - c_close
    - misc_memfd_get_seals
    - misc_memfd
    - memfd_seals
    - c_assert
    - fstat
    - C_ARRAY_SIZE
    linkageType: ''
    returnType: void
    signature: void test_memfd(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UINT64_C
      Src: /src/dbus-broker/src/util/test-misc.c:130,1
    - Dst: UINT64_C
      Src: /src/dbus-broker/src/util/test-misc.c:131,1
    - Dst: UINT64_C
      Src: /src/dbus-broker/src/util/test-misc.c:132,1
    - Dst: UINT64_C
      Src: /src/dbus-broker/src/util/test-misc.c:132,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/util/test-misc.c:141,1
    - Dst: util_umul64_saturating
      Src: /src/dbus-broker/src/util/test-misc.c:142,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-misc.c:143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 145
    functionName: test_umul_saturating
    functionSourceFile: /src/dbus-broker/src/util/test-misc.c
    functionUses: 0
    functionsReached:
    - c_assert
    - UINT64_C
    - C_ARRAY_SIZE
    - util_umul64_saturating
    linkageType: ''
    returnType: void
    signature: void test_umul_saturating(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/util/test-misc.c:176,1
    - Dst: util_z2u_saturating
      Src: /src/dbus-broker/src/util/test-misc.c:179,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-misc.c:180,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/util/test-misc.c:183,1
    - Dst: util_t2u_saturating
      Src: /src/dbus-broker/src/util/test-misc.c:186,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-misc.c:187,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 189
    functionName: test_casts
    functionSourceFile: /src/dbus-broker/src/util/test-misc.c
    functionUses: 0
    functionsReached:
    - c_assert
    - C_ARRAY_SIZE
    - util_z2u_saturating
    - util_t2u_saturating
    linkageType: ''
    returnType: void
    signature: void test_casts(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_memfd
      Src: /src/dbus-broker/src/util/test-misc.c:192,1
    - Dst: test_umul_saturating
      Src: /src/dbus-broker/src/util/test-misc.c:193,1
    - Dst: test_casts
      Src: /src/dbus-broker/src/util/test-misc.c:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 191
    functionDepth: 4
    functionLinenumber: 191
    functionLinenumberEnd: 196
    functionName: main
    functionSourceFile: /src/dbus-broker/src/util/test-misc.c
    functionUses: 0
    functionsReached:
    - test_casts
    - test_memfd
    - test_umul_saturating
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_selinux_enabled
      Src: /src/dbus-broker/src/util/selinux.c:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: bus_selinux_is_enabled
    functionSourceFile: /src/dbus-broker/src/util/selinux.c
    functionUses: 3
    functionsReached:
    - is_selinux_enabled
    linkageType: ''
    returnType: bool
    signature: bool bus_selinux_is_enabled(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: selinux_status_getenforce
      Src: /src/dbus-broker/src/util/selinux.c:54,1
    - Dst: security_getenforce
      Src: /src/dbus-broker/src/util/selinux.c:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionName: bus_selinux_is_enforcing
    functionSourceFile: /src/dbus-broker/src/util/selinux.c
    functionUses: 0
    functionsReached:
    - selinux_status_getenforce
    - security_getenforce
    linkageType: ''
    returnType: bool
    signature: bool bus_selinux_is_enforcing(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: selinux_policy_root
      Src: /src/dbus-broker/src/util/selinux.c:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 69
    functionName: bus_selinux_policy_root
    functionSourceFile: /src/dbus-broker/src/util/selinux.c
    functionUses: 1
    functionsReached:
    - selinux_policy_root
    linkageType: ''
    returnType: char
    signature: char *bus_selinux_policy_root(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/selinux.c:75,1
    - Dst: c_rbnode_is_linked
      Src: /src/dbus-broker/src/util/selinux.c:75,1
    - Dst: free
      Src: /src/dbus-broker/src/util/selinux.c:77,1
    - Dst: free
      Src: /src/dbus-broker/src/util/selinux.c:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - BusSELinuxName*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 81
    functionName: bus_selinux_name_free
    functionSourceFile: /src/dbus-broker/src/util/selinux.c
    functionUses: 0
    functionsReached:
    - c_assert
    - free
    - c_rbnode_is_linked
    linkageType: ''
    returnType: BusSELinuxName
    signature: BusSELinuxName *bus_selinux_name_free(BusSELinuxName *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/selinux.c:86,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/selinux.c:87,1
    - Dst: malloc
      Src: /src/dbus-broker/src/util/selinux.c:89,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/selinux.c:91,1
    - Dst: C_RBNODE_INIT
      Src: /src/dbus-broker/src/util/selinux.c:92,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/util/selinux.c:94,1
    - Dst: strdup
      Src: /src/dbus-broker/src/util/selinux.c:96,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/selinux.c:98,1
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/util/selinux.c:100,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 5
    argNames:
    - name
    - context
    - tree
    - parent
    - slot
    argTypes:
    - char*
    - char*
    - CRBTree*
    - CRBNode*
    - CRBNode**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 104
    functionName: bus_selinux_name_new
    functionSourceFile: /src/dbus-broker/src/util/selinux.c
    functionUses: 0
    functionsReached:
    - c_memcpy
    - strlen
    - C_RBNODE_INIT
    - error_origin
    - c_rbtree_add
    - _c_cleanup_
    - strdup
    - malloc
    linkageType: ''
    returnType: int
    signature: int bus_selinux_name_new(const char *name, const char *context, CRBTree
      *tree, CRBNode *parent, CRBNode **slot)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/selinux.c:118,1
    - Dst: strlen
      Src: /src/dbus-broker/src/util/selinux.c:119,1
    - Dst: malloc
      Src: /src/dbus-broker/src/util/selinux.c:121,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/selinux.c:123,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/util/selinux.c:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - registryp
    - fallback_context
    argTypes:
    - BusSELinuxRegistry**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 133
    functionName: bus_selinux_registry_new
    functionSourceFile: /src/dbus-broker/src/util/selinux.c
    functionUses: 0
    functionsReached:
    - c_memcpy
    - strlen
    - error_origin
    - _c_cleanup_
    - malloc
    linkageType: ''
    returnType: int
    signature: int bus_selinux_registry_new(BusSELinuxRegistry **registryp, const
      char *fallback_context)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/util/selinux.c:136,1
    - Dst: c_rbtree_for_each_entry_safe_postorder_unlink
      Src: /src/dbus-broker/src/util/selinux.c:139,1
    - Dst: bus_selinux_name_free
      Src: /src/dbus-broker/src/util/selinux.c:140,1
    - Dst: free
      Src: /src/dbus-broker/src/util/selinux.c:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - n_refs
    - userdata
    argTypes:
    - unsigned long*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 143
    functionName: bus_selinux_registry_free
    functionSourceFile: /src/dbus-broker/src/util/selinux.c
    functionUses: 0
    functionsReached:
    - bus_selinux_name_free
    - c_container_of
    - c_rbtree_for_each_entry_safe_postorder_unlink
    - free
    linkageType: ''
    returnType: void
    signature: void bus_selinux_registry_free(_Atomic unsigned long *n_refs, void
      *userdata)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ref_inc
      Src: /src/dbus-broker/src/util/selinux.c:147,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - registry
    argTypes:
    - BusSELinuxRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 145
    functionDepth: 2
    functionLinenumber: 145
    functionLinenumberEnd: 150
    functionName: bus_selinux_registry_ref
    functionSourceFile: /src/dbus-broker/src/util/selinux.c
    functionUses: 0
    functionsReached:
    - ref_inc
    linkageType: ''
    returnType: BusSELinuxRegistry
    signature: BusSELinuxRegistry *bus_selinux_registry_ref(BusSELinuxRegistry *registry)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ref_dec
      Src: /src/dbus-broker/src/util/selinux.c:154,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - registry
    argTypes:
    - BusSELinuxRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 152
    functionDepth: 2
    functionLinenumber: 152
    functionLinenumberEnd: 157
    functionName: bus_selinux_registry_unref
    functionSourceFile: /src/dbus-broker/src/util/selinux.c
    functionUses: 0
    functionsReached:
    - ref_dec
    linkageType: ''
    returnType: BusSELinuxRegistry
    signature: BusSELinuxRegistry *bus_selinux_registry_unref(BusSELinuxRegistry *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/util/selinux.c:161,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/util/selinux.c:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - k
    - rb
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 164
    functionName: name_compare
    functionSourceFile: /src/dbus-broker/src/util/selinux.c
    functionUses: 0
    functionsReached:
    - strcmp
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int name_compare(CRBTree *t, void *k, CRBNode *rb)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/util/selinux.c:183,1
    - Dst: bus_selinux_name_new
      Src: /src/dbus-broker/src/util/selinux.c:185,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/selinux.c:187,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/util/selinux.c:192,1
    - Dst: strdup
      Src: /src/dbus-broker/src/util/selinux.c:195,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/selinux.c:197,1
    - Dst: free
      Src: /src/dbus-broker/src/util/selinux.c:199,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - registry
    - name
    - context
    argTypes:
    - BusSELinuxRegistry*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 179
    functionDepth: 2
    functionLinenumber: 179
    functionLinenumberEnd: 204
    functionName: bus_selinux_registry_add_name
    functionSourceFile: /src/dbus-broker/src/util/selinux.c
    functionUses: 0
    functionsReached:
    - c_rbtree_find_slot
    - error_origin
    - bus_selinux_name_new
    - error_trace
    - c_container_of
    - strdup
    - free
    linkageType: ''
    returnType: int
    signature: int bus_selinux_registry_add_name(BusSELinuxRegistry *registry, const
      char *name, const char *context)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: is_selinux_enabled
      Src: /src/dbus-broker/src/util/selinux.c:233,1
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/util/selinux.c:236,1
    - Dst: selinux_check_access
      Src: /src/dbus-broker/src/util/selinux.c:242,1
    - Dst: bus_selinux_is_enforcing
      Src: /src/dbus-broker/src/util/selinux.c:247,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/selinux.c:255,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 3
    argNames:
    - registry
    - owner_context
    - name
    argTypes:
    - BusSELinuxRegistry*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 259
    functionName: bus_selinux_check_own
    functionSourceFile: /src/dbus-broker/src/util/selinux.c
    functionUses: 0
    functionsReached:
    - selinux_check_access
    - error_origin
    - bus_selinux_is_enforcing
    - is_selinux_enabled
    - c_rbtree_find_entry
    linkageType: ''
    returnType: int
    signature: "int bus_selinux_check_own(BusSELinuxRegistry *registry,\n                          const
      char *owner_context,\n                          const char *name)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: is_selinux_enabled
      Src: /src/dbus-broker/src/util/selinux.c:284,1
    - Dst: selinux_check_access
      Src: /src/dbus-broker/src/util/selinux.c:289,1
    - Dst: bus_selinux_is_enforcing
      Src: /src/dbus-broker/src/util/selinux.c:294,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/selinux.c:302,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 3
    argNames:
    - registry
    - sender_context
    - receiver_context
    argTypes:
    - BusSELinuxRegistry*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 306
    functionName: bus_selinux_check_send
    functionSourceFile: /src/dbus-broker/src/util/selinux.c
    functionUses: 0
    functionsReached:
    - bus_selinux_is_enforcing
    - is_selinux_enabled
    - selinux_check_access
    - error_origin
    linkageType: ''
    returnType: int
    signature: "int bus_selinux_check_send(BusSELinuxRegistry *registry,\n                           const
      char *sender_context,\n                           const char *receiver_context)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/selinux.c:309,1
    - Dst: va_start
      Src: /src/dbus-broker/src/util/selinux.c:314,1
    - Dst: vasprintf
      Src: /src/dbus-broker/src/util/selinux.c:315,1
    - Dst: va_end
      Src: /src/dbus-broker/src/util/selinux.c:316,1
    - Dst: util_audit_log
      Src: /src/dbus-broker/src/util/selinux.c:325,1
    - Dst: getuid
      Src: /src/dbus-broker/src/util/selinux.c:325,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/selinux.c:330,1
    - Dst: util_audit_log
      Src: /src/dbus-broker/src/util/selinux.c:335,1
    - Dst: getuid
      Src: /src/dbus-broker/src/util/selinux.c:335,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/selinux.c:340,1
    - Dst: util_audit_log
      Src: /src/dbus-broker/src/util/selinux.c:345,1
    - Dst: getuid
      Src: /src/dbus-broker/src/util/selinux.c:345,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/selinux.c:350,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/util/selinux.c:373,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/util/selinux.c:374,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/selinux.c:376,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 62
    argCount: 2
    argNames:
    - type
    - fmt
    argTypes:
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 308
    functionDepth: 2
    functionLinenumber: 308
    functionLinenumberEnd: 380
    functionName: bus_selinux_log_fn
    functionSourceFile: /src/dbus-broker/src/util/selinux.c
    functionUses: 0
    functionsReached:
    - log_commitf
    - va_start
    - va_end
    - log_append_here
    - util_audit_log
    - _c_cleanup_
    - vasprintf
    - error_fold
    - getuid
    linkageType: ''
    returnType: int
    signature: int bus_selinux_log_fn(int type, const char *fmt, ...)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: is_selinux_enabled
      Src: /src/dbus-broker/src/util/selinux.c:394,1
    - Dst: avc_open
      Src: /src/dbus-broker/src/util/selinux.c:400,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/selinux.c:402,1
    - Dst: selinux_status_open
      Src: /src/dbus-broker/src/util/selinux.c:410,1
    - Dst: selinux_status_close
      Src: /src/dbus-broker/src/util/selinux.c:423,1
    - Dst: selinux_set_callback
      Src: /src/dbus-broker/src/util/selinux.c:432,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/selinux.c:440,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 1
    argNames:
    - log
    argTypes:
    - Log*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 391
    functionDepth: 1
    functionLinenumber: 391
    functionLinenumberEnd: 441
    functionName: bus_selinux_init_global
    functionSourceFile: /src/dbus-broker/src/util/selinux.c
    functionUses: 0
    functionsReached:
    - avc_open
    - selinux_set_callback
    - error_origin
    - is_selinux_enabled
    - error_trace
    - selinux_status_open
    - selinux_status_close
    linkageType: ''
    returnType: int
    signature: int bus_selinux_init_global(Log *log)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: is_selinux_enabled
      Src: /src/dbus-broker/src/util/selinux.c:451,1
    - Dst: selinux_status_close
      Src: /src/dbus-broker/src/util/selinux.c:455,1
    - Dst: avc_destroy
      Src: /src/dbus-broker/src/util/selinux.c:460,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 450
    functionDepth: 0
    functionLinenumber: 450
    functionLinenumberEnd: 465
    functionName: bus_selinux_deinit_global
    functionSourceFile: /src/dbus-broker/src/util/selinux.c
    functionUses: 0
    functionsReached:
    - selinux_status_close
    - is_selinux_enabled
    - avc_destroy
    linkageType: ''
    returnType: void
    signature: void bus_selinux_deinit_global(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 25
    functionName: DIRWATCH_NULL
    functionSourceFile: /src/dbus-broker/src/util/dirwatch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DIRWATCH_NULL(_x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dirwatch_free
      Src: /src/dbus-broker/src/util/dirwatch.h:39,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - dw
    argTypes:
    - Dirwatch**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: dirwatch_freep
    functionSourceFile: /src/dbus-broker/src/util/dirwatch.h
    functionUses: 0
    functionsReached:
    - dirwatch_free
    linkageType: ''
    returnType: void
    signature: void dirwatch_freep(Dirwatch **dw)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clock_gettime
      Src: /src/dbus-broker/src/util/nsec.c:51,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/nsec.c:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - clock
    argTypes:
    - clockid_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 55
    functionName: nsec_now
    functionSourceFile: /src/dbus-broker/src/util/nsec.c
    functionUses: 2
    functionsReached:
    - c_assert
    - clock_gettime
    linkageType: ''
    returnType: nsec_t
    signature: nsec_t nsec_now(clockid_t clock)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/nsec.c:75,1
    - Dst: clock_nanosleep
      Src: /src/dbus-broker/src/util/nsec.c:82,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/nsec.c:83,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - clock
    - until
    argTypes:
    - clockid_t
    - nsec_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 85
    functionName: nsec_sleep
    functionSourceFile: /src/dbus-broker/src/util/nsec.c
    functionUses: 1
    functionsReached:
    - c_assert
    - clock_nanosleep
    linkageType: ''
    returnType: void
    signature: void nsec_sleep(clockid_t clock, nsec_t until)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/test-error.c:14,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-error.c:15,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/test-error.c:18,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-error.c:19,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/util/test-error.c:22,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-error.c:23,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/test-error.c:26,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-error.c:27,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/test-error.c:30,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-error.c:31,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/util/test-error.c:34,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-error.c:35,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/test-error.c:38,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-error.c:39,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/test-error.c:42,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-error.c:43,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/util/test-error.c:46,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-error.c:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 10
    functionDepth: 1
    functionLinenumber: 10
    functionLinenumberEnd: 48
    functionName: test_basic
    functionSourceFile: /src/dbus-broker/src/util/test-error.c
    functionUses: 3
    functionsReached:
    - c_assert
    - error_trace
    - error_origin
    - error_fold
    linkageType: ''
    returnType: void
    signature: void test_basic(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_basic
      Src: /src/dbus-broker/src/util/test-error.c:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: main
    functionSourceFile: /src/dbus-broker/src/util/test-error.c
    functionUses: 0
    functionsReached:
    - test_basic
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - nsec_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionName: nsec_to_usec
    functionSourceFile: /src/dbus-broker/src/util/nsec.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: uint64_t
    signature: uint64_t nsec_to_usec(nsec_t t)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-fs.c:15,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/util/test-fs.c:16,1
    - Dst: opendir
      Src: /src/dbus-broker/src/util/test-fs.c:32,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fs.c:33,1
    - Dst: fs_dir_list
      Src: /src/dbus-broker/src/util/test-fs.c:35,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fs.c:36,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fs.c:37,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fs.c:38,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/util/test-fs.c:43,1
    - Dst: string_equal
      Src: /src/dbus-broker/src/util/test-fs.c:46,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/util/test-fs.c:49,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/util/test-fs.c:49,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 14
    functionDepth: 3
    functionLinenumber: 14
    functionLinenumberEnd: 50
    functionName: test_dir_list
    functionSourceFile: /src/dbus-broker/src/util/test-fs.c
    functionUses: 0
    functionsReached:
    - opendir
    - _c_cleanup_
    - fs_dir_list
    - c_assert
    - string_equal
    - C_ARRAY_SIZE
    linkageType: ''
    returnType: void
    signature: void test_dir_list(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_dir_list
      Src: /src/dbus-broker/src/util/test-fs.c:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 4
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: main
    functionSourceFile: /src/dbus-broker/src/util/test-fs.c
    functionUses: 0
    functionsReached:
    - test_dir_list
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/broker/controller.c:23,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/broker/controller.c:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - k
    - rb
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 26
    functionName: controller_name_compare
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - strcmp
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int controller_name_compare(CRBTree *t, void *k, CRBNode *rb)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: activation_deinit
      Src: /src/dbus-broker/src/broker/controller.c:35,1
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/broker/controller.c:36,1
    - Dst: free
      Src: /src/dbus-broker/src/broker/controller.c:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - ControllerName*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 40
    functionName: controller_name_free
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - c_rbnode_unlink
    - activation_deinit
    - free
    linkageType: ''
    returnType: ControllerName
    signature: ControllerName *controller_name_free(ControllerName *name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/broker/controller.c:47,1
    - Dst: strlen
      Src: /src/dbus-broker/src/broker/controller.c:51,1
    - Dst: calloc
      Src: /src/dbus-broker/src/broker/controller.c:52,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/controller.c:54,1
    - Dst: C_RBNODE_INIT
      Src: /src/dbus-broker/src/broker/controller.c:57,1
    - Dst: ACTIVATION_NULL
      Src: /src/dbus-broker/src/broker/controller.c:58,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/broker/controller.c:59,1
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/broker/controller.c:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 3
    argNames:
    - namep
    - controller
    - path
    argTypes:
    - ControllerName**
    - Controller*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 64
    functionName: controller_name_new
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - c_memcpy
    - strlen
    - calloc
    - c_rbtree_find_slot
    - C_RBNODE_INIT
    - error_origin
    - c_rbtree_add
    - ACTIVATION_NULL
    linkageType: ''
    returnType: int
    signature: int controller_name_new(ControllerName **namep, Controller *controller,
      const char *path)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: driver_name_activation_failed
      Src: /src/dbus-broker/src/broker/controller.c:72,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller.c:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - name
    - serial
    - error
    argTypes:
    - ControllerName*
    - uint64_t
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 77
    functionName: controller_name_reset
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - driver_name_activation_failed
    - error_fold
    linkageType: ''
    returnType: int
    signature: int controller_name_reset(ControllerName *name, uint64_t serial, unsigned
      int error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: controller_dbus_send_activation
      Src: /src/dbus-broker/src/broker/controller.c:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - serial
    argTypes:
    - ControllerName*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: controller_name_activate
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - controller_dbus_send_activation
    linkageType: ''
    returnType: int
    signature: int controller_name_activate(ControllerName *name, uint64_t serial)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/broker/controller.c:87,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - t
    - k
    - rb
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 96
    functionName: controller_reload_compare
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int controller_reload_compare(CRBTree *t, void *k, CRBNode *rb)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/broker/controller.c:102,1
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/broker/controller.c:103,1
    - Dst: free
      Src: /src/dbus-broker/src/broker/controller.c:104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - reload
    argTypes:
    - ControllerReload*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 98
    functionDepth: 4
    functionLinenumber: 98
    functionLinenumberEnd: 107
    functionName: controller_reload_free
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - c_rbnode_unlink
    - user_charge_deinit
    - free
    linkageType: ''
    returnType: ControllerReload
    signature: ControllerReload *controller_reload_free(ControllerReload *reload)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/broker/controller.c:121,1
    - Dst: calloc
      Src: /src/dbus-broker/src/broker/controller.c:128,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/controller.c:130,1
    - Dst: CONTROLLER_RELOAD_NULL
      Src: /src/dbus-broker/src/broker/controller.c:132,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/broker/controller.c:136,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller.c:138,1
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/broker/controller.c:140,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 3
    argNames:
    - reloadp
    - user
    - controller
    argTypes:
    - ControllerReload**
    - User*
    - Controller*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 109
    functionDepth: 5
    functionLinenumber: 109
    functionLinenumberEnd: 143
    functionName: controller_reload_new
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - CONTROLLER_RELOAD_NULL
    - calloc
    - c_rbtree_find_slot
    - error_origin
    - c_rbtree_add
    - user_charge
    - error_fold
    linkageType: ''
    returnType: int
    signature: int controller_reload_new(ControllerReload **reloadp, User *user, Controller
      *controller)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller.c:149,1
    - Dst: driver_reload_config_completed
      Src: /src/dbus-broker/src/broker/controller.c:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - reload
    argTypes:
    - ControllerReload*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 150
    functionName: controller_reload_completed
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - driver_reload_config_completed
    - error_fold
    linkageType: ''
    returnType: int
    signature: int controller_reload_completed(ControllerReload *reload)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller.c:156,1
    - Dst: driver_reload_config_invalid
      Src: /src/dbus-broker/src/broker/controller.c:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - reload
    argTypes:
    - ControllerReload*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 157
    functionName: controller_reload_invalid
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - driver_reload_config_invalid
    - error_fold
    linkageType: ''
    returnType: int
    signature: int controller_reload_invalid(ControllerReload *reload)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/broker/controller.c:160,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/broker/controller.c:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - k
    - rb
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 163
    functionName: controller_listener_compare
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - strcmp
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int controller_listener_compare(CRBTree *t, void *k, CRBNode *rb)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: listener_deinit
      Src: /src/dbus-broker/src/broker/controller.c:172,1
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/broker/controller.c:173,1
    - Dst: free
      Src: /src/dbus-broker/src/broker/controller.c:174,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - listener
    argTypes:
    - ControllerListener*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 177
    functionName: controller_listener_free
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - c_rbnode_unlink
    - free
    - listener_deinit
    linkageType: ''
    returnType: ControllerListener
    signature: ControllerListener *controller_listener_free(ControllerListener *listener)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/broker/controller.c:184,1
    - Dst: strlen
      Src: /src/dbus-broker/src/broker/controller.c:188,1
    - Dst: calloc
      Src: /src/dbus-broker/src/broker/controller.c:189,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/controller.c:191,1
    - Dst: C_RBNODE_INIT
      Src: /src/dbus-broker/src/broker/controller.c:194,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/broker/controller.c:195,1
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/broker/controller.c:197,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - listenerp
    - controller
    - path
    argTypes:
    - ControllerListener**
    - Controller*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 200
    functionName: controller_listener_new
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - c_memcpy
    - strlen
    - calloc
    - c_rbtree_find_slot
    - C_RBNODE_INIT
    - error_origin
    - c_rbtree_add
    linkageType: ''
    returnType: int
    signature: int controller_listener_new(ControllerListener **listenerp, Controller
      *controller, const char *path)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller.c:206,1
    - Dst: listener_set_policy
      Src: /src/dbus-broker/src/broker/controller.c:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - listener
    - policy
    argTypes:
    - ControllerListener*
    - PolicyRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 205
    functionDepth: 1
    functionLinenumber: 205
    functionLinenumberEnd: 207
    functionName: controller_listener_set_policy
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - listener_set_policy
    - error_fold
    linkageType: ''
    returnType: int
    signature: int controller_listener_set_policy(ControllerListener *listener, PolicyRegistry
      *policy)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/broker/controller.c:210,1
    - Dst: connection_dispatch
      Src: /src/dbus-broker/src/broker/controller.c:213,1
    - Dst: dispatch_file_events
      Src: /src/dbus-broker/src/broker/controller.c:213,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller.c:215,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller.c:218,1
    - Dst: connection_dequeue
      Src: /src/dbus-broker/src/broker/controller.c:220,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller.c:225,1
    - Dst: controller_dbus_dispatch
      Src: /src/dbus-broker/src/broker/controller.c:230,1
    - Dst: connection_shutdown
      Src: /src/dbus-broker/src/broker/controller.c:235,1
    - Dst: connection_is_running
      Src: /src/dbus-broker/src/broker/controller.c:236,1
    - Dst: connection_close
      Src: /src/dbus-broker/src/broker/controller.c:238,1
    - Dst: connection_is_running
      Src: /src/dbus-broker/src/broker/controller.c:239,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller.c:242,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 1
    argNames:
    - file
    argTypes:
    - DispatchFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 209
    functionDepth: 3
    functionLinenumber: 209
    functionLinenumberEnd: 243
    functionName: controller_dispatch_connection
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - connection_dequeue
    - _c_cleanup_
    - connection_dispatch
    - c_container_of
    - dispatch_file_events
    - connection_close
    - connection_shutdown
    - controller_dbus_dispatch
    - connection_is_running
    - error_fold
    linkageType: ''
    returnType: int
    signature: int controller_dispatch_connection(DispatchFile *file)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller.c:249,1
    - Dst: CONTROLLER_NULL
      Src: /src/dbus-broker/src/broker/controller.c:252,1
    - Dst: connection_init_server
      Src: /src/dbus-broker/src/broker/controller.c:255,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller.c:262,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - c
    - broker
    - controller_fd
    argTypes:
    - Controller*
    - Broker*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 248
    functionDepth: 3
    functionLinenumber: 248
    functionLinenumberEnd: 266
    functionName: controller_init
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - _c_cleanup_
    - connection_init_server
    - error_fold
    - CONTROLLER_NULL
    linkageType: ''
    returnType: int
    signature: int controller_init(Controller *c, Broker *broker, int controller_fd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_for_each_entry_safe_postorder_unlink
      Src: /src/dbus-broker/src/broker/controller.c:276,1
    - Dst: controller_reload_free
      Src: /src/dbus-broker/src/broker/controller.c:277,1
    - Dst: c_rbtree_for_each_entry_safe_postorder_unlink
      Src: /src/dbus-broker/src/broker/controller.c:279,1
    - Dst: controller_name_free
      Src: /src/dbus-broker/src/broker/controller.c:280,1
    - Dst: c_rbtree_for_each_entry_safe_postorder_unlink
      Src: /src/dbus-broker/src/broker/controller.c:282,1
    - Dst: controller_listener_free
      Src: /src/dbus-broker/src/broker/controller.c:283,1
    - Dst: connection_deinit
      Src: /src/dbus-broker/src/broker/controller.c:285,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - controller
    argTypes:
    - Controller*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 271
    functionDepth: 5
    functionLinenumber: 271
    functionLinenumberEnd: 287
    functionName: controller_deinit
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - connection_deinit
    - controller_name_free
    - controller_listener_free
    - c_rbtree_for_each_entry_safe_postorder_unlink
    - controller_reload_free
    linkageType: ''
    returnType: void
    signature: void controller_deinit(Controller *controller)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller.c:297,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller.c:298,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller.c:299,1
    - Dst: name_registry_ref_name
      Src: /src/dbus-broker/src/broker/controller.c:302,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller.c:304,1
    - Dst: user_registry_ref_user
      Src: /src/dbus-broker/src/broker/controller.c:306,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller.c:308,1
    - Dst: controller_name_new
      Src: /src/dbus-broker/src/broker/controller.c:310,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller.c:312,1
    - Dst: activation_init
      Src: /src/dbus-broker/src/broker/controller.c:314,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller.c:316,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 5
    argNames:
    - controller
    - namep
    - path
    - name_str
    - uid
    argTypes:
    - Controller*
    - ControllerName**
    - char*
    - char*
    - uid_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 292
    functionDepth: 3
    functionLinenumber: 292
    functionLinenumberEnd: 321
    functionName: controller_add_name
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - user_registry_ref_user
    - activation_init
    - controller_name_new
    - name_registry_ref_name
    - _c_cleanup_
    - error_trace
    - error_fold
    linkageType: ''
    returnType: int
    signature: "int controller_add_name(Controller *controller,\n                        ControllerName
      **namep,\n                        const char *path,\n                        const
      char *name_str,\n                        uid_t uid)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller.c:331,1
    - Dst: controller_listener_new
      Src: /src/dbus-broker/src/broker/controller.c:334,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller.c:336,1
    - Dst: listener_init_with_fd
      Src: /src/dbus-broker/src/broker/controller.c:338,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller.c:344,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 5
    argNames:
    - controller
    - listenerp
    - path
    - listener_fd
    - policy
    argTypes:
    - Controller*
    - ControllerListener**
    - char*
    - int
    - PolicyRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 326
    functionDepth: 2
    functionLinenumber: 326
    functionLinenumberEnd: 349
    functionName: controller_add_listener
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - listener_init_with_fd
    - _c_cleanup_
    - error_trace
    - controller_listener_new
    - error_fold
    linkageType: ''
    returnType: int
    signature: "int controller_add_listener(Controller *controller,\n                            ControllerListener
      **listenerp,\n                            const char *path,\n                            int
      listener_fd,\n                            PolicyRegistry *policy)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller.c:358,1
    - Dst: controller_reload_new
      Src: /src/dbus-broker/src/broker/controller.c:361,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller.c:363,1
    - Dst: controller_dbus_send_reload
      Src: /src/dbus-broker/src/broker/controller.c:368,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller.c:370,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 4
    argNames:
    - controller
    - sender_user
    - sender_id
    - sender_serial
    argTypes:
    - Controller*
    - User*
    - uint64_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 354
    functionDepth: 6
    functionLinenumber: 354
    functionLinenumberEnd: 374
    functionName: controller_request_reload
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - controller_reload_new
    - _c_cleanup_
    - error_trace
    - controller_dbus_send_reload
    linkageType: ''
    returnType: int
    signature: "int controller_request_reload(Controller *controller,\n                              User
      *sender_user,\n                              uint64_t sender_id,\n                              uint32_t
      sender_serial)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/broker/controller.c:380,1
    - Dst: c_rbtree_find_node
      Src: /src/dbus-broker/src/broker/controller.c:380,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - controller
    - path
    argTypes:
    - Controller*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 385
    functionName: controller_find_name
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - c_rbtree_find_node
    - c_container_of
    linkageType: ''
    returnType: ControllerName
    signature: ControllerName *controller_find_name(Controller *controller, const
      char *path)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/broker/controller.c:391,1
    - Dst: c_rbtree_find_node
      Src: /src/dbus-broker/src/broker/controller.c:391,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - controller
    - path
    argTypes:
    - Controller*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 390
    functionDepth: 0
    functionLinenumber: 390
    functionLinenumberEnd: 396
    functionName: controller_find_listener
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - c_rbtree_find_node
    - c_container_of
    linkageType: ''
    returnType: ControllerListener
    signature: ControllerListener *controller_find_listener(Controller *controller,
      const char *path)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/broker/controller.c:402,1
    - Dst: c_rbtree_find_node
      Src: /src/dbus-broker/src/broker/controller.c:402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - controller
    - serial
    argTypes:
    - Controller*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 407
      start: 401
    functionDepth: 0
    functionLinenumber: 401
    functionLinenumberEnd: 407
    functionName: controller_find_reload
    functionSourceFile: /src/dbus-broker/src/broker/controller.c
    functionUses: 0
    functionsReached:
    - c_rbtree_find_node
    - c_container_of
    linkageType: ''
    returnType: ControllerReload
    signature: ControllerReload *controller_find_reload(Controller *controller, uint32_t
      serial)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionName: CONTROLLER_RELOAD_NULL
    functionSourceFile: /src/dbus-broker/src/broker/controller.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CONTROLLER_RELOAD_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 114
    functionName: CONTROLLER_NULL
    functionSourceFile: /src/dbus-broker/src/broker/controller.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CONTROLLER_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/broker/controller.h:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - activation
    argTypes:
    - Activation*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 182
    functionName: CONTROLLER_NAME
    functionSourceFile: /src/dbus-broker/src/broker/controller.h
    functionUses: 0
    functionsReached:
    - c_container_of
    linkageType: ''
    returnType: ControllerName
    signature: ControllerName *CONTROLLER_NAME(Activation *activation)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller.h:207,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller.h:208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - error
    argTypes:
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 211
    functionName: controller_name_error_to_string
    functionSourceFile: /src/dbus-broker/src/broker/controller.h
    functionUses: 1
    functionsReached:
    - c_assert
    linkageType: ''
    returnType: char
    signature: char *controller_name_error_to_string(unsigned int error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller.h:214,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller.h:215,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - error
    argTypes:
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 218
    functionName: controller_name_error_to_human_readable
    functionSourceFile: /src/dbus-broker/src/broker/controller.h
    functionUses: 0
    functionsReached:
    - c_assert
    linkageType: ''
    returnType: char
    signature: char *controller_name_error_to_human_readable(unsigned int error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: string_equal
      Src: /src/dbus-broker/src/broker/controller.h:222,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - error
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 220
    functionDepth: 1
    functionLinenumber: 220
    functionLinenumberEnd: 226
    functionName: controller_name_error_from_string
    functionSourceFile: /src/dbus-broker/src/broker/controller.h
    functionUses: 0
    functionsReached:
    - string_equal
    linkageType: ''
    returnType: unsigned int
    signature: unsigned int controller_name_error_from_string(const char *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/broker/broker.h:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - bus
    argTypes:
    - Bus*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 60
    functionName: BROKER
    functionSourceFile: /src/dbus-broker/src/broker/broker.h
    functionUses: 0
    functionsReached:
    - c_container_of
    linkageType: ''
    returnType: Broker
    signature: Broker *BROKER(Bus *bus)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/broker/broker.c:28,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/broker.c:32,1
    - Dst: dispatch_file_events
      Src: /src/dbus-broker/src/broker/broker.c:32,1
    - Dst: read
      Src: /src/dbus-broker/src/broker/broker.c:34,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/broker.c:36,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/broker.c:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - file
    argTypes:
    - DispatchFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 41
    functionName: broker_dispatch_signals
    functionSourceFile: /src/dbus-broker/src/broker/broker.c
    functionUses: 0
    functionsReached:
    - error_origin
    - read
    - c_container_of
    - dispatch_file_events
    - c_assert
    linkageType: ''
    returnType: int
    signature: int broker_dispatch_signals(DispatchFile *file)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/broker.c:44,1
    - Dst: getsockopt
      Src: /src/dbus-broker/src/broker/broker.c:51,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/broker.c:53,1
    - Dst: calloc
      Src: /src/dbus-broker/src/broker/broker.c:55,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/broker.c:57,1
    - Dst: BUS_NULL
      Src: /src/dbus-broker/src/broker/broker.c:60,1
    - Dst: DISPATCH_CONTEXT_NULL
      Src: /src/dbus-broker/src/broker/broker.c:61,1
    - Dst: DISPATCH_FILE_NULL
      Src: /src/dbus-broker/src/broker/broker.c:63,1
    - Dst: CONTROLLER_NULL
      Src: /src/dbus-broker/src/broker/broker.c:64,1
    - Dst: bus_init
      Src: /src/dbus-broker/src/broker/broker.c:66,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/broker.c:68,1
    - Dst: sockopt_get_peersec
      Src: /src/dbus-broker/src/broker/broker.c:83,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/broker.c:85,1
    - Dst: sockopt_get_peergroups
      Src: /src/dbus-broker/src/broker/broker.c:87,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/broker.c:94,1
    - Dst: user_registry_ref_user
      Src: /src/dbus-broker/src/broker/broker.c:97,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/broker.c:99,1
    - Dst: sockopt_get_peerpidfd
      Src: /src/dbus-broker/src/broker/broker.c:101,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/broker.c:106,1
    - Dst: dispatch_context_init
      Src: /src/dbus-broker/src/broker/broker.c:111,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/broker.c:113,1
    - Dst: sigemptyset
      Src: /src/dbus-broker/src/broker/broker.c:115,1
    - Dst: sigaddset
      Src: /src/dbus-broker/src/broker/broker.c:116,1
    - Dst: sigaddset
      Src: /src/dbus-broker/src/broker/broker.c:117,1
    - Dst: signalfd
      Src: /src/dbus-broker/src/broker/broker.c:119,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/broker.c:121,1
    - Dst: dispatch_file_init
      Src: /src/dbus-broker/src/broker/broker.c:123,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/broker.c:130,1
    - Dst: dispatch_file_select
      Src: /src/dbus-broker/src/broker/broker.c:132,1
    - Dst: controller_init
      Src: /src/dbus-broker/src/broker/broker.c:134,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/broker.c:136,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 52
    argCount: 8
    argNames:
    - brokerp
    - log
    - machine_id
    - controller_fd
    - max_bytes
    - max_fds
    - max_matches
    - max_objects
    argTypes:
    - Broker**
    - Log*
    - char*
    - int
    - uint64_t
    - uint64_t
    - uint64_t
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 43
    functionDepth: 4
    functionLinenumber: 43
    functionLinenumberEnd: 141
    functionName: broker_new
    functionSourceFile: /src/dbus-broker/src/broker/broker.c
    functionUses: 50
    functionsReached:
    - calloc
    - error_origin
    - dispatch_file_init
    - controller_init
    - BUS_NULL
    - sockopt_get_peersec
    - CONTROLLER_NULL
    - error_fold
    - DISPATCH_FILE_NULL
    - signalfd
    - _c_cleanup_
    - sockopt_get_peerpidfd
    - DISPATCH_CONTEXT_NULL
    - dispatch_file_select
    - user_registry_ref_user
    - sigemptyset
    - getsockopt
    - dispatch_context_init
    - bus_init
    - sockopt_get_peergroups
    - sigaddset
    linkageType: ''
    returnType: int
    signature: int broker_new(Broker **brokerp, Log *log, const char *machine_id,
      int controller_fd, uint64_t max_bytes, uint64_t max_fds, uint64_t max_matches,
      uint64_t max_objects)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: controller_deinit
      Src: /src/dbus-broker/src/broker/broker.c:147,1
    - Dst: dispatch_file_deinit
      Src: /src/dbus-broker/src/broker/broker.c:148,1
    - Dst: c_close
      Src: /src/dbus-broker/src/broker/broker.c:149,1
    - Dst: dispatch_context_deinit
      Src: /src/dbus-broker/src/broker/broker.c:150,1
    - Dst: bus_deinit
      Src: /src/dbus-broker/src/broker/broker.c:151,1
    - Dst: free
      Src: /src/dbus-broker/src/broker/broker.c:152,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - broker
    argTypes:
    - Broker*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 143
    functionDepth: 6
    functionLinenumber: 143
    functionLinenumberEnd: 155
    functionName: broker_free
    functionSourceFile: /src/dbus-broker/src/broker/broker.c
    functionUses: 0
    functionsReached:
    - c_close
    - bus_deinit
    - controller_deinit
    - dispatch_file_deinit
    - free
    - dispatch_context_deinit
    linkageType: ''
    returnType: Broker
    signature: Broker *broker_free(Broker *broker)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: metrics_read_standard_deviation
      Src: /src/dbus-broker/src/broker/broker.c:162,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/broker/broker.c:163,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/broker/broker.c:174,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/broker/broker.c:175,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/broker.c:181,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - broker
    argTypes:
    - Broker*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 157
    functionDepth: 2
    functionLinenumber: 157
    functionLinenumberEnd: 184
    functionName: broker_log_metrics
    functionSourceFile: /src/dbus-broker/src/broker/broker.c
    functionUses: 0
    functionsReached:
    - log_appendf
    - log_commitf
    - metrics_read_standard_deviation
    - log_append_here
    - error_fold
    linkageType: ''
    returnType: int
    signature: int broker_log_metrics(Broker *broker)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: sigemptyset
      Src: /src/dbus-broker/src/broker/broker.c:190,1
    - Dst: sigaddset
      Src: /src/dbus-broker/src/broker/broker.c:191,1
    - Dst: sigaddset
      Src: /src/dbus-broker/src/broker/broker.c:192,1
    - Dst: sigprocmask
      Src: /src/dbus-broker/src/broker/broker.c:194,1
    - Dst: connection_open
      Src: /src/dbus-broker/src/broker/broker.c:196,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/broker.c:200,1
    - Dst: dispatch_context_dispatch
      Src: /src/dbus-broker/src/broker/broker.c:203,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/broker.c:209,1
    - Dst: peer_registry_flush
      Src: /src/dbus-broker/src/broker/broker.c:212,1
    - Dst: broker_log_metrics
      Src: /src/dbus-broker/src/broker/broker.c:214,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/broker.c:216,1
    - Dst: sigprocmask
      Src: /src/dbus-broker/src/broker/broker.c:218,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 1
    argNames:
    - broker
    argTypes:
    - Broker*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 186
    functionDepth: 3
    functionLinenumber: 186
    functionLinenumberEnd: 221
    functionName: broker_run
    functionSourceFile: /src/dbus-broker/src/broker/broker.c
    functionUses: 0
    functionsReached:
    - sigaddset
    - connection_open
    - dispatch_context_dispatch
    - sigprocmask
    - sigemptyset
    - peer_registry_flush
    - error_fold
    - broker_log_metrics
    linkageType: ''
    returnType: int
    signature: int broker_run(Broker *broker)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/broker.c:224,1
    - Dst: controller_dbus_send_environment
      Src: /src/dbus-broker/src/broker/broker.c:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - broker
    - env
    - n_env
    argTypes:
    - Broker*
    - char**
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 225
    functionName: broker_update_environment
    functionSourceFile: /src/dbus-broker/src/broker/broker.c
    functionUses: 0
    functionsReached:
    - controller_dbus_send_environment
    - error_fold
    linkageType: ''
    returnType: int
    signature: int broker_update_environment(Broker *broker, const char * const *env,
      size_t n_env)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: controller_request_reload
      Src: /src/dbus-broker/src/broker/broker.c:230,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/broker.c:236,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 4
    argNames:
    - broker
    - sender_user
    - sender_id
    - sender_serial
    argTypes:
    - Broker*
    - User*
    - uint64_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 227
    functionDepth: 7
    functionLinenumber: 227
    functionLinenumberEnd: 240
    functionName: broker_reload_config
    functionSourceFile: /src/dbus-broker/src/broker/broker.c
    functionUses: 0
    functionsReached:
    - controller_request_reload
    - error_fold
    linkageType: ''
    returnType: int
    signature: int broker_reload_config(Broker *broker, User *sender_user, uint64_t
      sender_id, uint32_t sender_serial)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/dbus-broker/src/broker/main.c:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 43
    functionName: help
    functionSourceFile: /src/dbus-broker/src/broker/main.c
    functionUses: 1
    functionsReached:
    - printf
    linkageType: ''
    returnType: void
    signature: void help(void)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: getopt_long
      Src: /src/dbus-broker/src/broker/main.c:72,1
    - Dst: help
      Src: /src/dbus-broker/src/broker/main.c:75,1
    - Dst: printf
      Src: /src/dbus-broker/src/broker/main.c:79,1
    - Dst: strtoul
      Src: /src/dbus-broker/src/broker/main.c:91,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/broker/main.c:93,1
    - Dst: strtoul
      Src: /src/dbus-broker/src/broker/main.c:106,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/broker/main.c:108,1
    - Dst: strlen
      Src: /src/dbus-broker/src/broker/main.c:117,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/broker/main.c:118,1
    - Dst: util_strtou64
      Src: /src/dbus-broker/src/broker/main.c:127,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/broker/main.c:129,1
    - Dst: util_strtou64
      Src: /src/dbus-broker/src/broker/main.c:136,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/broker/main.c:138,1
    - Dst: util_strtou64
      Src: /src/dbus-broker/src/broker/main.c:145,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/broker/main.c:147,1
    - Dst: util_strtou64
      Src: /src/dbus-broker/src/broker/main.c:154,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/broker/main.c:156,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/main.c:167,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/broker/main.c:172,1
    - Dst: getsockopt
      Src: /src/dbus-broker/src/broker/main.c:189,1
    - Dst: getsockopt
      Src: /src/dbus-broker/src/broker/main.c:191,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/main.c:195,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/broker/main.c:197,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/broker/main.c:200,1
    - Dst: getsockopt
      Src: /src/dbus-broker/src/broker/main.c:211,1
    - Dst: getsockopt
      Src: /src/dbus-broker/src/broker/main.c:213,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/main.c:217,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/broker/main.c:219,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/broker/main.c:222,1
    - Dst: fprintf
      Src: /src/dbus-broker/src/broker/main.c:230,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 115
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 45
    functionDepth: 2
    functionLinenumber: 45
    functionLinenumberEnd: 236
    functionName: parse_argv
    functionSourceFile: /src/dbus-broker/src/broker/main.c
    functionUses: 2
    functionsReached:
    - util_strtou64
    - strlen
    - error_origin
    - getsockopt
    - printf
    - help
    - strtoul
    - getopt_long
    - fprintf
    linkageType: ''
    returnType: int
    signature: int parse_argv(int argc, char *argv[])
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: prctl
      Src: /src/dbus-broker/src/broker/main.c:248,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/main.c:250,1
    - Dst: getsockopt
      Src: /src/dbus-broker/src/broker/main.c:254,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/main.c:256,1
    - Dst: log_init
      Src: /src/dbus-broker/src/broker/main.c:260,1
    - Dst: log_init_stderr
      Src: /src/dbus-broker/src/broker/main.c:262,1
    - Dst: log_init_journal
      Src: /src/dbus-broker/src/broker/main.c:264,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/main.c:266,1
    - Dst: log_set_lossy
      Src: /src/dbus-broker/src/broker/main.c:269,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - logp
    argTypes:
    - Log*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 238
    functionDepth: 2
    functionLinenumber: 238
    functionLinenumberEnd: 272
    functionName: setup
    functionSourceFile: /src/dbus-broker/src/broker/main.c
    functionUses: 6
    functionsReached:
    - log_set_lossy
    - error_origin
    - getsockopt
    - prctl
    - log_init_journal
    - log_init
    - log_init_stderr
    linkageType: ''
    returnType: int
    signature: int setup(Log *logp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/main.c:275,1
    - Dst: broker_new
      Src: /src/dbus-broker/src/broker/main.c:278,1
    - Dst: broker_run
      Src: /src/dbus-broker/src/broker/main.c:280,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/main.c:282,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - log
    argTypes:
    - Log*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 274
    functionDepth: 5
    functionLinenumber: 274
    functionLinenumberEnd: 283
    functionName: run
    functionSourceFile: /src/dbus-broker/src/broker/main.c
    functionUses: 4
    functionsReached:
    - _c_cleanup_
    - broker_run
    - error_trace
    - broker_new
    linkageType: ''
    returnType: int
    signature: int run(Log *log)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: parse_argv
      Src: /src/dbus-broker/src/broker/main.c:289,1
    - Dst: setup
      Src: /src/dbus-broker/src/broker/main.c:293,1
    - Dst: util_audit_init_global
      Src: /src/dbus-broker/src/broker/main.c:298,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/main.c:300,1
    - Dst: bus_selinux_init_global
      Src: /src/dbus-broker/src/broker/main.c:305,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/main.c:307,1
    - Dst: run
      Src: /src/dbus-broker/src/broker/main.c:311,1
    - Dst: bus_selinux_deinit_global
      Src: /src/dbus-broker/src/broker/main.c:314,1
    - Dst: util_audit_deinit_global
      Src: /src/dbus-broker/src/broker/main.c:315,1
    - Dst: log_deinit
      Src: /src/dbus-broker/src/broker/main.c:316,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/main.c:318,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 285
    functionDepth: 3
    functionLinenumber: 285
    functionLinenumberEnd: 320
    functionName: main
    functionSourceFile: /src/dbus-broker/src/broker/main.c
    functionUses: 0
    functionsReached:
    - setup
    - log_deinit
    - run
    - error_trace
    - util_audit_init_global
    - util_audit_deinit_global
    - bus_selinux_deinit_global
    - parse_argv
    - error_fold
    - bus_selinux_init_global
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _body
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 56
    functionName: CONTROLLER_T_MESSAGE
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CONTROLLER_T_MESSAGE(_body)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:101,1
    - Dst: strlen
      Src: /src/dbus-broker/src/broker/controller-dbus.c:101,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:102,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:103,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:104,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:105,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:106,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:107,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:108,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:109,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:110,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:111,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:112,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:113,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:114,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:115,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:116,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:117,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:118,1
    - Dst: strlen
      Src: /src/dbus-broker/src/broker/controller-dbus.c:120,1
    - Dst: strlen
      Src: /src/dbus-broker/src/broker/controller-dbus.c:120,1
    - Dst: strlen
      Src: /src/dbus-broker/src/broker/controller-dbus.c:123,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 2
    argNames:
    - var
    - type
    argTypes:
    - CDVar*
    - CDVarType*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 126
    functionName: controller_dvar_write_signature_out
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached:
    - c_assert
    - c_dvar_write
    - strlen
    linkageType: ''
    returnType: void
    signature: void controller_dvar_write_signature_out(CDVar *var, const CDVarType
      *type)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/dbus-broker/src/broker/controller-dbus.c:129,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:132,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/broker/controller-dbus.c:133,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - type
    - signature
    argTypes:
    - CDVarType*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 140
    functionName: controller_dvar_verify_signature_in
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached:
    - c_assert
    - strlen
    linkageType: ''
    returnType: int
    signature: int controller_dvar_verify_signature_in(const CDVarType *type, const
      char *signature)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:143,1
    - Dst: c_dvar_is_big_endian
      Src: /src/dbus-broker/src/broker/controller-dbus.c:144,1
    - Dst: controller_dvar_write_signature_out
      Src: /src/dbus-broker/src/broker/controller-dbus.c:147,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - var
    - serial
    - type
    argTypes:
    - CDVar*
    - uint32_t
    - CDVarType*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 149
    functionName: controller_write_reply_header
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached:
    - controller_dvar_write_signature_out
    - c_dvar_write
    - c_dvar_is_big_endian
    linkageType: ''
    returnType: void
    signature: void controller_write_reply_header(CDVar *var, uint32_t serial, const
      CDVarType *type)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:152,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:153,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:154,1
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:161,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:162,1
    - Dst: c_dvar_is_big_endian
      Src: /src/dbus-broker/src/broker/controller-dbus.c:163,1
    - Dst: c_dvar_end_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:167,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/controller-dbus.c:169,1
    - Dst: message_new_outgoing
      Src: /src/dbus-broker/src/broker/controller-dbus.c:171,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller-dbus.c:173,1
    - Dst: connection_queue
      Src: /src/dbus-broker/src/broker/controller-dbus.c:176,1
    - Dst: connection_close
      Src: /src/dbus-broker/src/broker/controller-dbus.c:179,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller-dbus.c:181,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 3
    argNames:
    - connection
    - serial
    - error
    argTypes:
    - Connection*
    - uint32_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 151
    functionDepth: 3
    functionLinenumber: 151
    functionLinenumberEnd: 185
    functionName: controller_send_error
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached:
    - c_dvar_begin_write
    - error_origin
    - c_dvar_is_big_endian
    - connection_queue
    - _c_cleanup_
    - message_new_outgoing
    - connection_close
    - c_dvar_write
    - error_fold
    - c_dvar_end_write
    linkageType: ''
    returnType: int
    signature: int controller_send_error(Connection *connection, uint32_t serial,
      const char *error)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_end_read
      Src: /src/dbus-broker/src/broker/controller-dbus.c:190,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/controller-dbus.c:198,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - var
    argTypes:
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 200
    functionName: controller_end_read
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached:
    - error_origin
    - c_dvar_end_read
    linkageType: ''
    returnType: int
    signature: int controller_end_read(CDVar *var)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/broker/controller-dbus.c:208,1
    - Dst: controller_end_read
      Src: /src/dbus-broker/src/broker/controller-dbus.c:210,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller-dbus.c:212,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/broker/controller-dbus.c:214,1
    - Dst: strlen
      Src: /src/dbus-broker/src/broker/controller-dbus.c:214,1
    - Dst: dbus_validate_name
      Src: /src/dbus-broker/src/broker/controller-dbus.c:216,1
    - Dst: strlen
      Src: /src/dbus-broker/src/broker/controller-dbus.c:216,1
    - Dst: controller_add_name
      Src: /src/dbus-broker/src/broker/controller-dbus.c:219,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller-dbus.c:221,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:223,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 5
    argNames:
    - controller
    - _path
    - in_v
    - fds
    - out_v
    argTypes:
    - Controller*
    - char*
    - CDVar*
    - FDList*
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 202
    functionDepth: 4
    functionLinenumber: 202
    functionLinenumberEnd: 226
    functionName: controller_method_add_name
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached:
    - strlen
    - c_dvar_read
    - strncmp
    - error_trace
    - c_dvar_write
    - dbus_validate_name
    - controller_add_name
    - controller_end_read
    linkageType: ''
    returnType: int
    signature: int controller_method_add_name(Controller *controller, const char *_path,
      CDVar *in_v, FDList *fds, CDVar *out_v)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:229,1
    - Dst: policy_registry_new
      Src: /src/dbus-broker/src/broker/controller-dbus.c:236,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller-dbus.c:238,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/broker/controller-dbus.c:240,1
    - Dst: policy_registry_import
      Src: /src/dbus-broker/src/broker/controller-dbus.c:242,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller-dbus.c:244,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/broker/controller-dbus.c:246,1
    - Dst: controller_end_read
      Src: /src/dbus-broker/src/broker/controller-dbus.c:248,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller-dbus.c:250,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/broker/controller-dbus.c:252,1
    - Dst: strlen
      Src: /src/dbus-broker/src/broker/controller-dbus.c:252,1
    - Dst: fdlist_get
      Src: /src/dbus-broker/src/broker/controller-dbus.c:255,1
    - Dst: getsockopt
      Src: /src/dbus-broker/src/broker/controller-dbus.c:260,1
    - Dst: getsockopt
      Src: /src/dbus-broker/src/broker/controller-dbus.c:262,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/controller-dbus.c:265,1
    - Dst: controller_add_listener
      Src: /src/dbus-broker/src/broker/controller-dbus.c:269,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller-dbus.c:271,1
    - Dst: fdlist_steal
      Src: /src/dbus-broker/src/broker/controller-dbus.c:274,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:276,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 5
    argNames:
    - controller
    - _path
    - in_v
    - fds
    - out_v
    argTypes:
    - Controller*
    - char*
    - CDVar*
    - FDList*
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 228
    functionDepth: 3
    functionLinenumber: 228
    functionLinenumberEnd: 279
    functionName: controller_method_add_listener
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached:
    - fdlist_get
    - fdlist_steal
    - strlen
    - policy_registry_new
    - c_dvar_read
    - error_origin
    - getsockopt
    - _c_cleanup_
    - strncmp
    - error_trace
    - c_dvar_write
    - controller_end_read
    - policy_registry_import
    - controller_add_listener
    - error_fold
    linkageType: ''
    returnType: int
    signature: int controller_method_add_listener(Controller *controller, const char
      *_path, CDVar *in_v, FDList *fds, CDVar *out_v)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/broker/controller-dbus.c:285,1
    - Dst: controller_end_read
      Src: /src/dbus-broker/src/broker/controller-dbus.c:287,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller-dbus.c:289,1
    - Dst: controller_find_listener
      Src: /src/dbus-broker/src/broker/controller-dbus.c:291,1
    - Dst: controller_listener_free
      Src: /src/dbus-broker/src/broker/controller-dbus.c:295,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:297,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 5
    argNames:
    - controller
    - path
    - in_v
    - fds
    - out_v
    argTypes:
    - Controller*
    - char*
    - CDVar*
    - FDList*
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 281
    functionDepth: 2
    functionLinenumber: 281
    functionLinenumberEnd: 300
    functionName: controller_method_listener_release
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached:
    - c_dvar_read
    - controller_listener_free
    - controller_find_listener
    - error_trace
    - c_dvar_write
    - controller_end_read
    linkageType: ''
    returnType: int
    signature: int controller_method_listener_release(Controller *controller, const
      char *path, CDVar *in_v, FDList *fds, CDVar *out_v)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/broker/controller-dbus.c:306,1
    - Dst: controller_end_read
      Src: /src/dbus-broker/src/broker/controller-dbus.c:308,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller-dbus.c:310,1
    - Dst: controller_find_name
      Src: /src/dbus-broker/src/broker/controller-dbus.c:312,1
    - Dst: controller_name_reset
      Src: /src/dbus-broker/src/broker/controller-dbus.c:316,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller-dbus.c:318,1
    - Dst: controller_name_free
      Src: /src/dbus-broker/src/broker/controller-dbus.c:320,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:322,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 5
    argNames:
    - controller
    - path
    - in_v
    - fds
    - out_v
    argTypes:
    - Controller*
    - char*
    - CDVar*
    - FDList*
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 302
    functionDepth: 2
    functionLinenumber: 302
    functionLinenumberEnd: 325
    functionName: controller_method_name_release
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached:
    - controller_name_free
    - c_dvar_read
    - controller_name_reset
    - error_trace
    - c_dvar_write
    - controller_end_read
    - controller_find_name
    linkageType: ''
    returnType: int
    signature: int controller_method_name_release(Controller *controller, const char
      *path, CDVar *in_v, FDList *fds, CDVar *out_v)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:328,1
    - Dst: policy_registry_new
      Src: /src/dbus-broker/src/broker/controller-dbus.c:332,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller-dbus.c:334,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/broker/controller-dbus.c:336,1
    - Dst: policy_registry_import
      Src: /src/dbus-broker/src/broker/controller-dbus.c:338,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller-dbus.c:340,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/broker/controller-dbus.c:342,1
    - Dst: controller_end_read
      Src: /src/dbus-broker/src/broker/controller-dbus.c:344,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller-dbus.c:346,1
    - Dst: controller_find_listener
      Src: /src/dbus-broker/src/broker/controller-dbus.c:348,1
    - Dst: controller_listener_set_policy
      Src: /src/dbus-broker/src/broker/controller-dbus.c:352,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller-dbus.c:354,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:357,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 5
    argNames:
    - controller
    - path
    - in_v
    - fds
    - out_v
    argTypes:
    - Controller*
    - char*
    - CDVar*
    - FDList*
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 327
    functionDepth: 2
    functionLinenumber: 327
    functionLinenumberEnd: 360
    functionName: controller_method_listener_set_policy
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached:
    - policy_registry_new
    - c_dvar_read
    - controller_find_listener
    - _c_cleanup_
    - error_trace
    - c_dvar_write
    - controller_listener_set_policy
    - controller_end_read
    - policy_registry_import
    - error_fold
    linkageType: ''
    returnType: int
    signature: int controller_method_listener_set_policy(Controller *controller, const
      char *path, CDVar *in_v, FDList *fds, CDVar *out_v)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/broker/controller-dbus.c:369,1
    - Dst: controller_end_read
      Src: /src/dbus-broker/src/broker/controller-dbus.c:371,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller-dbus.c:373,1
    - Dst: controller_find_name
      Src: /src/dbus-broker/src/broker/controller-dbus.c:375,1
    - Dst: controller_name_error_from_string
      Src: /src/dbus-broker/src/broker/controller-dbus.c:379,1
    - Dst: controller_name_reset
      Src: /src/dbus-broker/src/broker/controller-dbus.c:383,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller-dbus.c:385,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:387,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 5
    argNames:
    - controller
    - path
    - in_v
    - fds
    - out_v
    argTypes:
    - Controller*
    - char*
    - CDVar*
    - FDList*
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 362
    functionDepth: 2
    functionLinenumber: 362
    functionLinenumberEnd: 390
    functionName: controller_method_name_reset
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached:
    - c_dvar_read
    - controller_name_reset
    - controller_name_error_from_string
    - error_trace
    - c_dvar_write
    - controller_end_read
    - controller_find_name
    linkageType: ''
    returnType: int
    signature: int controller_method_name_reset(Controller *controller, const char
      *path, CDVar *in_v, FDList *fds, CDVar *out_v)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:393,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:394,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:395,1
    - Dst: controller_dvar_verify_signature_in
      Src: /src/dbus-broker/src/broker/controller-dbus.c:404,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller-dbus.c:406,1
    - Dst: c_dvar_begin_read
      Src: /src/dbus-broker/src/broker/controller-dbus.c:408,1
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:409,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:418,1
    - Dst: controller_write_reply_header
      Src: /src/dbus-broker/src/broker/controller-dbus.c:419,1
    - Dst: ControllerMethod*::fn
      Src: /src/dbus-broker/src/broker/controller-dbus.c:421,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller-dbus.c:423,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:425,1
    - Dst: c_dvar_end_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:434,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/controller-dbus.c:436,1
    - Dst: message_new_outgoing
      Src: /src/dbus-broker/src/broker/controller-dbus.c:442,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller-dbus.c:444,1
    - Dst: connection_queue
      Src: /src/dbus-broker/src/broker/controller-dbus.c:447,1
    - Dst: connection_close
      Src: /src/dbus-broker/src/broker/controller-dbus.c:450,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller-dbus.c:452,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 6
    argNames:
    - method
    - controller
    - path
    - serial
    - signature_in
    - message_in
    argTypes:
    - ControllerMethod*
    - Controller*
    - char*
    - uint32_t
    - char*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 392
    functionDepth: 3
    functionLinenumber: 392
    functionLinenumberEnd: 456
    functionName: controller_handle_method
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached:
    - c_dvar_begin_write
    - controller_write_reply_header
    - error_origin
    - connection_queue
    - _c_cleanup_
    - c_dvar_end_write
    - message_new_outgoing
    - error_trace
    - c_dvar_write
    - connection_close
    - c_dvar_begin_read
    - ControllerMethod*::fn
    - error_fold
    - controller_dvar_verify_signature_in
    linkageType: ''
    returnType: int
    signature: int controller_handle_method(const ControllerMethod *method, Controller
      *controller, const char *path, uint32_t serial, const char *signature_in, Message
      *message_in)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/broker/controller-dbus.c:464,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/broker/controller-dbus.c:465,1
    - Dst: controller_handle_method
      Src: /src/dbus-broker/src/broker/controller-dbus.c:468,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 6
    argNames:
    - controller
    - serial
    - method
    - path
    - signature
    - message
    argTypes:
    - Controller*
    - uint32_t
    - char*
    - char*
    - char*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 458
    functionDepth: 4
    functionLinenumber: 458
    functionLinenumberEnd: 472
    functionName: controller_dispatch_controller
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached:
    - strcmp
    - C_ARRAY_SIZE
    - controller_handle_method
    linkageType: ''
    returnType: int
    signature: int controller_dispatch_controller(Controller *controller, uint32_t
      serial, const char *method, const char *path, const char *signature, Message
      *message)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/broker/controller-dbus.c:480,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/broker/controller-dbus.c:481,1
    - Dst: controller_handle_method
      Src: /src/dbus-broker/src/broker/controller-dbus.c:484,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 6
    argNames:
    - controller
    - serial
    - method
    - path
    - signature
    - message
    argTypes:
    - Controller*
    - uint32_t
    - char*
    - char*
    - char*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 474
    functionDepth: 4
    functionLinenumber: 474
    functionLinenumberEnd: 488
    functionName: controller_dispatch_name
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached:
    - strcmp
    - C_ARRAY_SIZE
    - controller_handle_method
    linkageType: ''
    returnType: int
    signature: int controller_dispatch_name(Controller *controller, uint32_t serial,
      const char *method, const char *path, const char *signature, Message *message)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/broker/controller-dbus.c:496,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/broker/controller-dbus.c:497,1
    - Dst: controller_handle_method
      Src: /src/dbus-broker/src/broker/controller-dbus.c:500,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 6
    argNames:
    - controller
    - serial
    - method
    - path
    - signature
    - message
    argTypes:
    - Controller*
    - uint32_t
    - char*
    - char*
    - char*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 490
    functionDepth: 4
    functionLinenumber: 490
    functionLinenumberEnd: 504
    functionName: controller_dispatch_listener
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached:
    - strcmp
    - C_ARRAY_SIZE
    - controller_handle_method
    linkageType: ''
    returnType: int
    signature: int controller_dispatch_listener(Controller *controller, uint32_t serial,
      const char *method, const char *path, const char *signature, Message *message)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/dbus-broker/src/broker/controller-dbus.c:507,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:508,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/broker/controller-dbus.c:508,1
    - Dst: controller_dispatch_controller
      Src: /src/dbus-broker/src/broker/controller-dbus.c:511,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/broker/controller-dbus.c:512,1
    - Dst: strlen
      Src: /src/dbus-broker/src/broker/controller-dbus.c:512,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:513,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/broker/controller-dbus.c:513,1
    - Dst: controller_dispatch_name
      Src: /src/dbus-broker/src/broker/controller-dbus.c:516,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/broker/controller-dbus.c:517,1
    - Dst: strlen
      Src: /src/dbus-broker/src/broker/controller-dbus.c:517,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:518,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/broker/controller-dbus.c:518,1
    - Dst: controller_dispatch_listener
      Src: /src/dbus-broker/src/broker/controller-dbus.c:521,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 17
    argCount: 7
    argNames:
    - controller
    - serial
    - interface
    - member
    - path
    - signature
    - message
    argTypes:
    - Controller*
    - uint32_t
    - char*
    - char*
    - char*
    - char*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 506
    functionDepth: 5
    functionLinenumber: 506
    functionLinenumberEnd: 525
    functionName: controller_dispatch_object
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached:
    - strlen
    - controller_dispatch_controller
    - _c_unlikely_
    - strncmp
    - strcmp
    - controller_dispatch_listener
    - controller_dispatch_name
    linkageType: ''
    returnType: int
    signature: int controller_dispatch_object(Controller *controller, uint32_t serial,
      const char *interface, const char *member, const char *path, const char *signature,
      Message *message)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: controller_find_reload
      Src: /src/dbus-broker/src/broker/controller-dbus.c:531,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/broker/controller-dbus.c:535,1
    - Dst: controller_reload_completed
      Src: /src/dbus-broker/src/broker/controller-dbus.c:538,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller-dbus.c:540,1
    - Dst: controller_reload_free
      Src: /src/dbus-broker/src/broker/controller-dbus.c:542,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - controller
    - serial
    - signature
    - message
    argTypes:
    - Controller*
    - uint32_t
    - char*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 527
    functionDepth: 5
    functionLinenumber: 527
    functionLinenumberEnd: 545
    functionName: controller_dispatch_reply
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached:
    - controller_find_reload
    - error_trace
    - controller_reload_free
    - controller_reload_completed
    - strcmp
    linkageType: ''
    returnType: int
    signature: int controller_dispatch_reply(Controller *controller, uint32_t serial,
      const char *signature, Message *message)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: controller_find_reload
      Src: /src/dbus-broker/src/broker/controller-dbus.c:551,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/broker/controller-dbus.c:555,1
    - Dst: controller_reload_invalid
      Src: /src/dbus-broker/src/broker/controller-dbus.c:558,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller-dbus.c:560,1
    - Dst: controller_reload_free
      Src: /src/dbus-broker/src/broker/controller-dbus.c:562,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - controller
    - serial
    - error_name
    - message
    argTypes:
    - Controller*
    - uint32_t
    - char*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 547
    functionDepth: 5
    functionLinenumber: 547
    functionLinenumberEnd: 565
    functionName: controller_dispatch_error
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 0
    functionsReached:
    - controller_find_reload
    - controller_reload_invalid
    - error_trace
    - controller_reload_free
    - strcmp
    linkageType: ''
    returnType: int
    signature: int controller_dispatch_error(Controller *controller, uint32_t serial,
      const char *error_name, Message *message)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: message_parse_metadata
      Src: /src/dbus-broker/src/broker/controller-dbus.c:571,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller-dbus.c:575,1
    - Dst: controller_dispatch_object
      Src: /src/dbus-broker/src/broker/controller-dbus.c:579,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/broker/controller-dbus.c:580,1
    - Dst: controller_dispatch_reply
      Src: /src/dbus-broker/src/broker/controller-dbus.c:588,1
    - Dst: controller_dispatch_error
      Src: /src/dbus-broker/src/broker/controller-dbus.c:594,1
    - Dst: controller_send_error
      Src: /src/dbus-broker/src/broker/controller-dbus.c:610,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/broker/controller-dbus.c:610,1
    - Dst: controller_send_error
      Src: /src/dbus-broker/src/broker/controller-dbus.c:613,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/broker/controller-dbus.c:613,1
    - Dst: controller_send_error
      Src: /src/dbus-broker/src/broker/controller-dbus.c:616,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/broker/controller-dbus.c:616,1
    - Dst: controller_send_error
      Src: /src/dbus-broker/src/broker/controller-dbus.c:619,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/broker/controller-dbus.c:619,1
    - Dst: controller_send_error
      Src: /src/dbus-broker/src/broker/controller-dbus.c:622,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/broker/controller-dbus.c:622,1
    - Dst: controller_send_error
      Src: /src/dbus-broker/src/broker/controller-dbus.c:625,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/broker/controller-dbus.c:625,1
    - Dst: controller_send_error
      Src: /src/dbus-broker/src/broker/controller-dbus.c:628,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/broker/controller-dbus.c:628,1
    - Dst: controller_send_error
      Src: /src/dbus-broker/src/broker/controller-dbus.c:631,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/broker/controller-dbus.c:631,1
    - Dst: controller_send_error
      Src: /src/dbus-broker/src/broker/controller-dbus.c:634,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/broker/controller-dbus.c:634,1
    - Dst: controller_send_error
      Src: /src/dbus-broker/src/broker/controller-dbus.c:637,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/broker/controller-dbus.c:637,1
    - Dst: controller_send_error
      Src: /src/dbus-broker/src/broker/controller-dbus.c:640,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/broker/controller-dbus.c:640,1
    - Dst: controller_send_error
      Src: /src/dbus-broker/src/broker/controller-dbus.c:643,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/broker/controller-dbus.c:643,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/broker/controller-dbus.c:649,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 65
    argCount: 2
    argNames:
    - controller
    - message
    argTypes:
    - Controller*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 650
      start: 567
    functionDepth: 6
    functionLinenumber: 567
    functionLinenumberEnd: 650
    functionName: controller_dbus_dispatch
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 1
    functionsReached:
    - controller_send_error
    - controller_dispatch_error
    - message_read_serial
    - controller_dispatch_reply
    - message_parse_metadata
    - error_trace
    - controller_dispatch_object
    - error_fold
    linkageType: ''
    returnType: int
    signature: int controller_dbus_dispatch(Controller *controller, Message *message)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: C_DVAR_T_INIT
      Src: /src/dbus-broker/src/broker/controller-dbus.c:657,1
    - Dst: CONTROLLER_T_MESSAGE
      Src: /src/dbus-broker/src/broker/controller-dbus.c:658,1
    - Dst: C_DVAR_T_TUPLE1
      Src: /src/dbus-broker/src/broker/controller-dbus.c:659,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:665,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:666,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:667,1
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:671,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:672,1
    - Dst: c_dvar_is_big_endian
      Src: /src/dbus-broker/src/broker/controller-dbus.c:673,1
    - Dst: c_dvar_end_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:680,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/controller-dbus.c:682,1
    - Dst: message_new_outgoing
      Src: /src/dbus-broker/src/broker/controller-dbus.c:684,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller-dbus.c:686,1
    - Dst: connection_queue
      Src: /src/dbus-broker/src/broker/controller-dbus.c:689,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller-dbus.c:691,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - controller
    - path
    - serial
    argTypes:
    - Controller*
    - char*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 694
      start: 655
    functionDepth: 3
    functionLinenumber: 655
    functionLinenumberEnd: 694
    functionName: controller_dbus_send_activation
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 1
    functionsReached:
    - C_DVAR_T_TUPLE1
    - CONTROLLER_T_MESSAGE
    - c_dvar_begin_write
    - error_origin
    - c_dvar_is_big_endian
    - connection_queue
    - _c_cleanup_
    - message_new_outgoing
    - c_dvar_write
    - C_DVAR_T_INIT
    - error_fold
    - c_dvar_end_write
    linkageType: ''
    returnType: int
    signature: int controller_dbus_send_activation(Controller *controller, const char
      *path, uint64_t serial)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: C_DVAR_T_INIT
      Src: /src/dbus-broker/src/broker/controller-dbus.c:701,1
    - Dst: CONTROLLER_T_MESSAGE
      Src: /src/dbus-broker/src/broker/controller-dbus.c:702,1
    - Dst: C_DVAR_T_TUPLE1
      Src: /src/dbus-broker/src/broker/controller-dbus.c:703,1
    - Dst: C_DVAR_T_ARRAY
      Src: /src/dbus-broker/src/broker/controller-dbus.c:704,1
    - Dst: C_DVAR_T_PAIR
      Src: /src/dbus-broker/src/broker/controller-dbus.c:705,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:714,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:715,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:716,1
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:720,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:721,1
    - Dst: c_dvar_is_big_endian
      Src: /src/dbus-broker/src/broker/controller-dbus.c:722,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:729,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:731,1
    - Dst: c_dvar_end_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:733,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/controller-dbus.c:735,1
    - Dst: message_new_outgoing
      Src: /src/dbus-broker/src/broker/controller-dbus.c:737,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller-dbus.c:739,1
    - Dst: connection_queue
      Src: /src/dbus-broker/src/broker/controller-dbus.c:742,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller-dbus.c:744,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 3
    argNames:
    - controller
    - env
    - n_env
    argTypes:
    - Controller*
    - char**
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 747
      start: 699
    functionDepth: 3
    functionLinenumber: 699
    functionLinenumberEnd: 747
    functionName: controller_dbus_send_environment
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 1
    functionsReached:
    - C_DVAR_T_TUPLE1
    - CONTROLLER_T_MESSAGE
    - error_fold
    - c_dvar_begin_write
    - error_origin
    - c_dvar_is_big_endian
    - connection_queue
    - _c_cleanup_
    - message_new_outgoing
    - C_DVAR_T_PAIR
    - c_dvar_write
    - C_DVAR_T_INIT
    - C_DVAR_T_ARRAY
    - c_dvar_end_write
    linkageType: ''
    returnType: int
    signature: int controller_dbus_send_environment(Controller *controller, const
      char * const *env, size_t n_env)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: C_DVAR_T_INIT
      Src: /src/dbus-broker/src/broker/controller-dbus.c:754,1
    - Dst: CONTROLLER_T_MESSAGE
      Src: /src/dbus-broker/src/broker/controller-dbus.c:755,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:760,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:761,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/broker/controller-dbus.c:762,1
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:766,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:767,1
    - Dst: c_dvar_is_big_endian
      Src: /src/dbus-broker/src/broker/controller-dbus.c:768,1
    - Dst: c_dvar_end_write
      Src: /src/dbus-broker/src/broker/controller-dbus.c:773,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/broker/controller-dbus.c:775,1
    - Dst: message_new_outgoing
      Src: /src/dbus-broker/src/broker/controller-dbus.c:777,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller-dbus.c:779,1
    - Dst: connection_queue
      Src: /src/dbus-broker/src/broker/controller-dbus.c:782,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/broker/controller-dbus.c:787,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 3
    argNames:
    - controller
    - user
    - serial
    argTypes:
    - Controller*
    - User*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 791
      start: 752
    functionDepth: 3
    functionLinenumber: 752
    functionLinenumberEnd: 791
    functionName: controller_dbus_send_reload
    functionSourceFile: /src/dbus-broker/src/broker/controller-dbus.c
    functionUses: 1
    functionsReached:
    - CONTROLLER_T_MESSAGE
    - c_dvar_begin_write
    - error_origin
    - c_dvar_is_big_endian
    - connection_queue
    - _c_cleanup_
    - message_new_outgoing
    - c_dvar_write
    - C_DVAR_T_INIT
    - error_fold
    - c_dvar_end_write
    linkageType: ''
    returnType: int
    signature: int controller_dbus_send_reload(Controller *controller, User *user,
      uint32_t serial)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/reply.c:21,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - tree
    - k
    - rb
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 35
    functionName: reply_slot_compare
    functionSourceFile: /src/dbus-broker/src/bus/reply.c
    functionUses: 0
    functionsReached:
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int reply_slot_compare(CRBTree *tree, void *k, CRBNode *rb)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/bus/reply.c:46,1
    - Dst: calloc
      Src: /src/dbus-broker/src/bus/reply.c:50,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/reply.c:52,1
    - Dst: C_RBNODE_INIT
      Src: /src/dbus-broker/src/bus/reply.c:57,1
    - Dst: C_LIST_INIT
      Src: /src/dbus-broker/src/bus/reply.c:58,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/bus/reply.c:62,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/reply.c:64,1
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/bus/reply.c:66,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/bus/reply.c:67,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 7
    argNames:
    - replyp
    - registry
    - owner
    - user
    - actor
    - id
    - serial
    argTypes:
    - ReplySlot**
    - ReplyRegistry*
    - ReplyOwner*
    - User*
    - User*
    - uint64_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 37
    functionDepth: 5
    functionLinenumber: 37
    functionLinenumberEnd: 72
    functionName: reply_slot_new
    functionSourceFile: /src/dbus-broker/src/bus/reply.c
    functionUses: 0
    functionsReached:
    - C_LIST_INIT
    - calloc
    - c_list_link_tail
    - c_rbtree_find_slot
    - C_RBNODE_INIT
    - error_origin
    - c_rbtree_add
    - user_charge
    - error_fold
    linkageType: ''
    returnType: int
    signature: int reply_slot_new(ReplySlot **replyp, ReplyRegistry *registry, ReplyOwner
      *owner, User *user, User *actor, uint64_t id, uint32_t serial)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/bus/reply.c:78,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/bus/reply.c:79,1
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/bus/reply.c:80,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/reply.c:82,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - slot
    argTypes:
    - ReplySlot*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 74
    functionDepth: 4
    functionLinenumber: 74
    functionLinenumberEnd: 85
    functionName: reply_slot_free
    functionSourceFile: /src/dbus-broker/src/bus/reply.c
    functionUses: 0
    functionsReached:
    - c_rbnode_unlink
    - user_charge_deinit
    - c_list_unlink
    - free
    linkageType: ''
    returnType: ReplySlot
    signature: ReplySlot *reply_slot_free(ReplySlot *slot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/bus/reply.c:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - registry
    - id
    - serial
    argTypes:
    - ReplyRegistry*
    - uint64_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 94
    functionName: reply_slot_get_by_id
    functionSourceFile: /src/dbus-broker/src/bus/reply.c
    functionUses: 0
    functionsReached:
    - c_rbtree_find_entry
    linkageType: ''
    returnType: ReplySlot
    signature: ReplySlot *reply_slot_get_by_id(ReplyRegistry *registry, uint64_t id,
      uint32_t serial)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - registry
    argTypes:
    - ReplyRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: reply_registry_init
    functionSourceFile: /src/dbus-broker/src/bus/reply.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void reply_registry_init(ReplyRegistry *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/reply.c:101,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/bus/reply.c:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - registry
    argTypes:
    - ReplyRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 102
    functionName: reply_registry_deinit
    functionSourceFile: /src/dbus-broker/src/bus/reply.c
    functionUses: 0
    functionsReached:
    - c_assert
    - c_rbtree_is_empty
    linkageType: ''
    returnType: void
    signature: void reply_registry_deinit(ReplyRegistry *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: REPLY_OWNER_INIT
      Src: /src/dbus-broker/src/bus/reply.c:105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - owner
    argTypes:
    - ReplyOwner*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: reply_owner_init
    functionSourceFile: /src/dbus-broker/src/bus/reply.c
    functionUses: 0
    functionsReached:
    - REPLY_OWNER_INIT
    linkageType: ''
    returnType: void
    signature: void reply_owner_init(ReplyOwner *owner)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/reply.c:109,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/bus/reply.c:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - owner
    argTypes:
    - ReplyOwner*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 110
    functionName: reply_owner_deinit
    functionSourceFile: /src/dbus-broker/src/bus/reply.c
    functionUses: 0
    functionsReached:
    - c_assert
    - c_list_is_empty
    linkageType: ''
    returnType: void
    signature: void reply_owner_deinit(ReplyOwner *owner)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_list_for_each_entry
      Src: /src/dbus-broker/src/bus/reply.c:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - owner
    - n_objectsp
    argTypes:
    - ReplyOwner*
    - unsigned int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 120
    functionName: reply_owner_get_stats
    functionSourceFile: /src/dbus-broker/src/bus/reply.c
    functionUses: 0
    functionsReached:
    - c_list_for_each_entry
    linkageType: ''
    returnType: void
    signature: void reply_owner_get_stats(ReplyOwner *owner, unsigned int *n_objectsp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reply_registry_init
      Src: /src/dbus-broker/src/bus/test-reply.c:18,1
    - Dst: reply_owner_init
      Src: /src/dbus-broker/src/bus/test-reply.c:19,1
    - Dst: reply_slot_new
      Src: /src/dbus-broker/src/bus/test-reply.c:21,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-reply.c:22,1
    - Dst: reply_slot_new
      Src: /src/dbus-broker/src/bus/test-reply.c:24,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-reply.c:25,1
    - Dst: reply_slot_get_by_id
      Src: /src/dbus-broker/src/bus/test-reply.c:27,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-reply.c:28,1
    - Dst: reply_slot_get_by_id
      Src: /src/dbus-broker/src/bus/test-reply.c:30,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-reply.c:31,1
    - Dst: reply_slot_get_by_id
      Src: /src/dbus-broker/src/bus/test-reply.c:33,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-reply.c:34,1
    - Dst: reply_slot_free
      Src: /src/dbus-broker/src/bus/test-reply.c:36,1
    - Dst: reply_owner_deinit
      Src: /src/dbus-broker/src/bus/test-reply.c:37,1
    - Dst: reply_registry_deinit
      Src: /src/dbus-broker/src/bus/test-reply.c:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 12
    functionDepth: 6
    functionLinenumber: 12
    functionLinenumberEnd: 39
    functionName: test_basic
    functionSourceFile: /src/dbus-broker/src/bus/test-reply.c
    functionUses: 4
    functionsReached:
    - reply_slot_new
    - reply_slot_free
    - reply_slot_get_by_id
    - reply_owner_deinit
    - reply_registry_deinit
    - c_assert
    - reply_owner_init
    - reply_registry_init
    linkageType: ''
    returnType: void
    signature: void test_basic(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_basic
      Src: /src/dbus-broker/src/bus/test-reply.c:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 45
    functionName: main
    functionSourceFile: /src/dbus-broker/src/bus/test-reply.c
    functionUses: 0
    functionsReached:
    - test_basic
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 95
    functionName: PEER_INIT
    functionSourceFile: /src/dbus-broker/src/bus/peer.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PEER_INIT(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - peer
    argTypes:
    - Peer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: peer_is_registered
    functionSourceFile: /src/dbus-broker/src/bus/peer.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool peer_is_registered(Peer *peer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - peer
    argTypes:
    - Peer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    functionName: peer_is_monitor
    functionSourceFile: /src/dbus-broker/src/bus/peer.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool peer_is_monitor(Peer *peer)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/listener.c:18,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/listener.c:19,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/listener.c:20,1
    - Dst: dispatch_file_events
      Src: /src/dbus-broker/src/bus/listener.c:23,1
    - Dst: accept4
      Src: /src/dbus-broker/src/bus/listener.c:26,1
    - Dst: dispatch_file_clear
      Src: /src/dbus-broker/src/bus/listener.c:34,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/listener.c:42,1
    - Dst: peer_new_with_fd
      Src: /src/dbus-broker/src/bus/listener.c:46,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/listener.c:54,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/bus/listener.c:57,1
    - Dst: peer_spawn
      Src: /src/dbus-broker/src/bus/listener.c:59,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/listener.c:61,1
    - Dst: peer_dispatch
      Src: /src/dbus-broker/src/bus/listener.c:63,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/listener.c:65,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 1
    argNames:
    - file
    argTypes:
    - DispatchFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 17
    functionDepth: 1
    functionLinenumber: 17
    functionLinenumberEnd: 66
    functionName: listener_dispatch
    functionSourceFile: /src/dbus-broker/src/bus/listener.c
    functionUses: 0
    functionsReached:
    - peer_dispatch
    - accept4
    - c_list_link_tail
    - error_origin
    - _c_cleanup_
    - c_container_of
    - dispatch_file_events
    - peer_spawn
    - dispatch_file_clear
    - peer_new_with_fd
    - error_fold
    linkageType: ''
    returnType: int
    signature: int listener_dispatch(DispatchFile *file)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/listener.c:76,1
    - Dst: LISTENER_NULL
      Src: /src/dbus-broker/src/bus/listener.c:79,1
    - Dst: dispatch_file_init
      Src: /src/dbus-broker/src/bus/listener.c:95,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/listener.c:102,1
    - Dst: dispatch_file_select
      Src: /src/dbus-broker/src/bus/listener.c:104,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 5
    argNames:
    - l
    - bus
    - dispatcher
    - socket_fd
    - policy
    argTypes:
    - Listener*
    - Bus*
    - DispatchContext*
    - int
    - PolicyRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 71
    functionDepth: 2
    functionLinenumber: 71
    functionLinenumberEnd: 110
    functionName: listener_init_with_fd
    functionSourceFile: /src/dbus-broker/src/bus/listener.c
    functionUses: 1
    functionsReached:
    - dispatch_file_select
    - dispatch_file_init
    - _c_cleanup_
    - LISTENER_NULL
    - error_fold
    linkageType: ''
    returnType: int
    signature: "int listener_init_with_fd(Listener *l,\n                          Bus
      *bus,\n                          DispatchContext *dispatcher,\n                          int
      socket_fd,\n                          PolicyRegistry *policy)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/listener.c:116,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/bus/listener.c:116,1
    - Dst: policy_registry_free
      Src: /src/dbus-broker/src/bus/listener.c:118,1
    - Dst: dispatch_file_deinit
      Src: /src/dbus-broker/src/bus/listener.c:119,1
    - Dst: c_close
      Src: /src/dbus-broker/src/bus/listener.c:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - listener
    argTypes:
    - Listener*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 122
    functionName: listener_deinit
    functionSourceFile: /src/dbus-broker/src/bus/listener.c
    functionUses: 1
    functionsReached:
    - c_close
    - dispatch_file_deinit
    - c_assert
    - policy_registry_free
    - c_list_is_empty
    linkageType: ''
    returnType: void
    signature: void listener_deinit(Listener *listener)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_list_for_each_entry
      Src: /src/dbus-broker/src/bus/listener.c:131,1
    - Dst: policy_snapshot_new
      Src: /src/dbus-broker/src/bus/listener.c:134,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/listener.c:136,1
    - Dst: policy_snapshot_free
      Src: /src/dbus-broker/src/bus/listener.c:138,1
    - Dst: policy_registry_free
      Src: /src/dbus-broker/src/bus/listener.c:142,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - listener
    - registry
    argTypes:
    - Listener*
    - PolicyRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 145
    functionName: listener_set_policy
    functionSourceFile: /src/dbus-broker/src/bus/listener.c
    functionUses: 2
    functionsReached:
    - c_list_for_each_entry
    - policy_snapshot_free
    - policy_snapshot_new
    - policy_registry_free
    - error_fold
    linkageType: ''
    returnType: int
    signature: int listener_set_policy(Listener *listener, PolicyRegistry *registry)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/bus/bus.c:30,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/bus.c:33,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/bus.c:34,1
    - Dst: BUS_NULL
      Src: /src/dbus-broker/src/bus/bus.c:36,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/bus/bus.c:39,1
    - Dst: getauxval
      Src: /src/dbus-broker/src/bus/bus.c:41,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/bus.c:42,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/bus/bus.c:43,1
    - Dst: user_registry_init
      Src: /src/dbus-broker/src/bus/bus.c:45,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/bus.c:47,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 7
    argNames:
    - bus
    - log
    - machine_id
    - max_bytes
    - max_fds
    - max_matches
    - max_objects
    argTypes:
    - Bus*
    - Log*
    - char*
    - unsigned int
    - unsigned int
    - unsigned int
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 19
    functionDepth: 2
    functionLinenumber: 19
    functionLinenumberEnd: 50
    functionName: bus_init
    functionSourceFile: /src/dbus-broker/src/bus/bus.c
    functionUses: 1
    functionsReached:
    - c_memcpy
    - user_registry_init
    - getauxval
    - strlen
    - error_origin
    - BUS_NULL
    - c_assert
    - C_ARRAY_SIZE
    - error_fold
    linkageType: ''
    returnType: int
    signature: "int bus_init(Bus *bus,\n             Log *log,\n             const
      char *machine_id,\n             unsigned int max_bytes,\n             unsigned
      int max_fds,\n             unsigned int max_matches,\n             unsigned
      int max_objects)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_free
      Src: /src/dbus-broker/src/bus/bus.c:54,1
    - Dst: c_free
      Src: /src/dbus-broker/src/bus/bus.c:56,1
    - Dst: c_close
      Src: /src/dbus-broker/src/bus/bus.c:58,1
    - Dst: user_unref
      Src: /src/dbus-broker/src/bus/bus.c:59,1
    - Dst: metrics_deinit
      Src: /src/dbus-broker/src/bus/bus.c:60,1
    - Dst: peer_registry_deinit
      Src: /src/dbus-broker/src/bus/bus.c:61,1
    - Dst: user_registry_deinit
      Src: /src/dbus-broker/src/bus/bus.c:62,1
    - Dst: name_registry_deinit
      Src: /src/dbus-broker/src/bus/bus.c:63,1
    - Dst: match_registry_deinit
      Src: /src/dbus-broker/src/bus/bus.c:64,1
    - Dst: match_registry_deinit
      Src: /src/dbus-broker/src/bus/bus.c:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - bus
    argTypes:
    - Bus*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 52
    functionDepth: 3
    functionLinenumber: 52
    functionLinenumberEnd: 66
    functionName: bus_deinit
    functionSourceFile: /src/dbus-broker/src/bus/bus.c
    functionUses: 1
    functionsReached:
    - c_close
    - match_registry_deinit
    - name_registry_deinit
    - peer_registry_deinit
    - c_free
    - metrics_deinit
    - user_unref
    - user_registry_deinit
    linkageType: ''
    returnType: void
    signature: void bus_deinit(Bus *bus)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: address_from_string
      Src: /src/dbus-broker/src/bus/bus.c:74,1
    - Dst: peer_registry_find_peer
      Src: /src/dbus-broker/src/bus/bus.c:77,1
    - Dst: name_registry_find_name
      Src: /src/dbus-broker/src/bus/bus.c:80,1
    - Dst: name_primary
      Src: /src/dbus-broker/src/bus/bus.c:82,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/bus.c:84,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - bus
    - namep
    - name_str
    argTypes:
    - Bus*
    - Name**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 92
    functionName: bus_find_peer_by_name
    functionSourceFile: /src/dbus-broker/src/bus/bus.c
    functionUses: 0
    functionsReached:
    - address_from_string
    - name_primary
    - name_registry_find_name
    - peer_registry_find_peer
    - c_container_of
    linkageType: ''
    returnType: Peer
    signature: Peer *bus_find_peer_by_name(Bus *bus, Name **namep, const char *name_str)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: match_registry_get_monitors
      Src: /src/dbus-broker/src/bus/bus.c:98,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/bus.c:103,1
    - Dst: name_ownership_is_primary
      Src: /src/dbus-broker/src/bus/bus.c:104,1
    - Dst: match_registry_get_monitors
      Src: /src/dbus-broker/src/bus/bus.c:107,1
    - Dst: match_registry_get_monitors
      Src: /src/dbus-broker/src/bus/bus.c:110,1
    - Dst: match_registry_get_monitors
      Src: /src/dbus-broker/src/bus/bus.c:113,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 4
    argNames:
    - bus
    - destinations
    - sender
    - metadata
    argTypes:
    - Bus*
    - CList*
    - Peer*
    - MessageMetadata*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 115
    functionName: bus_get_monitor_destinations
    functionSourceFile: /src/dbus-broker/src/bus/bus.c
    functionUses: 0
    functionsReached:
    - name_ownership_is_primary
    - c_rbtree_for_each_entry
    - match_registry_get_monitors
    linkageType: ''
    returnType: void
    signature: void bus_get_monitor_destinations(Bus *bus, CList *destinations, Peer
      *sender, MessageMetadata *metadata)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: match_registry_get_subscribers
      Src: /src/dbus-broker/src/bus/bus.c:118,1
    - Dst: match_registry_get_subscribers
      Src: /src/dbus-broker/src/bus/bus.c:121,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/bus.c:128,1
    - Dst: name_ownership_is_primary
      Src: /src/dbus-broker/src/bus/bus.c:129,1
    - Dst: match_registry_get_subscribers
      Src: /src/dbus-broker/src/bus/bus.c:132,1
    - Dst: match_registry_get_subscribers
      Src: /src/dbus-broker/src/bus/bus.c:136,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 5
    argNames:
    - bus
    - destinations
    - matches
    - sender
    - metadata
    argTypes:
    - Bus*
    - CList*
    - MatchRegistry*
    - Peer*
    - MessageMetadata*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 138
    functionName: bus_get_broadcast_destinations
    functionSourceFile: /src/dbus-broker/src/bus/bus.c
    functionUses: 0
    functionsReached:
    - match_registry_get_subscribers
    - c_rbtree_for_each_entry
    - name_ownership_is_primary
    linkageType: ''
    returnType: void
    signature: void bus_get_broadcast_destinations(Bus *bus, CList *destinations,
      MatchRegistry *matches, Peer *sender, MessageMetadata *metadata)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: log_appendf
      Src: /src/dbus-broker/src/bus/bus.c:144,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/bus/bus.c:148,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/bus/bus.c:151,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/bus.c:161,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/bus/bus.c:164,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/bus/bus.c:169,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 4
    argNames:
    - bus
    - sender_id
    - sender_names
    - sender_label
    argTypes:
    - Bus*
    - uint64_t
    - NameSet*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 174
    functionName: bus_log_append_sender
    functionSourceFile: /src/dbus-broker/src/bus/bus.c
    functionUses: 0
    functionsReached:
    - log_appendf
    - c_rbtree_for_each_entry
    linkageType: ''
    returnType: void
    signature: void bus_log_append_sender(Bus *bus, uint64_t sender_id, NameSet *sender_names,
      const char *sender_label)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: log_appendf
      Src: /src/dbus-broker/src/bus/bus.c:180,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/bus/bus.c:184,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/bus/bus.c:187,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/bus.c:197,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/bus/bus.c:200,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/bus/bus.c:205,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 4
    argNames:
    - bus
    - receiver_id
    - receiver_names
    - receiver_label
    argTypes:
    - Bus*
    - uint64_t
    - NameSet*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 176
    functionDepth: 2
    functionLinenumber: 176
    functionLinenumberEnd: 210
    functionName: bus_log_append_receiver
    functionSourceFile: /src/dbus-broker/src/bus/bus.c
    functionUses: 0
    functionsReached:
    - log_appendf
    - c_rbtree_for_each_entry
    linkageType: ''
    returnType: void
    signature: void bus_log_append_receiver(Bus *bus, uint64_t receiver_id, NameSet
      *receiver_names, const char *receiver_label)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: message_log_append
      Src: /src/dbus-broker/src/bus/bus.c:215,1
    - Dst: bus_log_append_sender
      Src: /src/dbus-broker/src/bus/bus.c:216,1
    - Dst: bus_log_append_receiver
      Src: /src/dbus-broker/src/bus/bus.c:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 8
    argNames:
    - bus
    - sender_id
    - receiver_id
    - sender_names
    - receiver_names
    - sender_label
    - receiver_label
    - message
    argTypes:
    - Bus*
    - uint64_t
    - uint64_t
    - NameSet*
    - NameSet*
    - char*
    - char*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 212
    functionDepth: 3
    functionLinenumber: 212
    functionLinenumberEnd: 218
    functionName: bus_log_append_transaction
    functionSourceFile: /src/dbus-broker/src/bus/bus.c
    functionUses: 0
    functionsReached:
    - bus_log_append_sender
    - message_log_append
    - bus_log_append_receiver
    linkageType: ''
    returnType: void
    signature: "void bus_log_append_transaction(Bus *bus, uint64_t sender_id, uint64_t
      receiver_id,\n                                NameSet *sender_names, NameSet
      *receiver_names, const char *sender_label, const char *receiver_label,\n                                Message
      *message)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: log_appendf
      Src: /src/dbus-broker/src/bus/bus.c:223,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/bus/bus.c:226,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/bus/bus.c:229,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/bus.c:232,1
    - Dst: abort
      Src: /src/dbus-broker/src/bus/bus.c:233,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/bus/bus.c:236,1
    - Dst: bus_log_append_transaction
      Src: /src/dbus-broker/src/bus/bus.c:237,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 9
    argNames:
    - bus
    - policy_type
    - sender_id
    - receiver_id
    - sender_names
    - receiver_names
    - sender_label
    - receiver_label
    - message
    argTypes:
    - Bus*
    - int
    - uint64_t
    - uint64_t
    - NameSet*
    - NameSet*
    - char*
    - char*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 220
    functionDepth: 4
    functionLinenumber: 220
    functionLinenumberEnd: 238
    functionName: bus_log_append_policy_send
    functionSourceFile: /src/dbus-broker/src/bus/bus.c
    functionUses: 0
    functionsReached:
    - c_assert
    - abort
    - log_appendf
    - bus_log_append_transaction
    linkageType: ''
    returnType: void
    signature: void bus_log_append_policy_send(Bus *bus, int policy_type, uint64_t
      sender_id, uint64_t receiver_id, NameSet *sender_names, NameSet *receiver_names,
      const char *sender_label, const char *receiver_label, Message *message)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: log_appendf
      Src: /src/dbus-broker/src/bus/bus.c:243,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/bus/bus.c:246,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/bus/bus.c:249,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/bus.c:252,1
    - Dst: abort
      Src: /src/dbus-broker/src/bus/bus.c:253,1
    - Dst: log_appendf
      Src: /src/dbus-broker/src/bus/bus.c:255,1
    - Dst: bus_log_append_transaction
      Src: /src/dbus-broker/src/bus/bus.c:256,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 7
    argNames:
    - bus
    - policy_type
    - receiver_id
    - sender_id
    - sender_names
    - receiver_names
    - message
    argTypes:
    - Bus*
    - int
    - uint64_t
    - uint64_t
    - NameSet*
    - NameSet*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 240
    functionDepth: 4
    functionLinenumber: 240
    functionLinenumberEnd: 257
    functionName: bus_log_append_policy_receive
    functionSourceFile: /src/dbus-broker/src/bus/bus.c
    functionUses: 0
    functionsReached:
    - c_assert
    - abort
    - log_appendf
    - bus_log_append_transaction
    linkageType: ''
    returnType: void
    signature: void bus_log_append_policy_receive(Bus *bus, int policy_type, uint64_t
      receiver_id, uint64_t sender_id, NameSet *sender_names, NameSet *receiver_names,
      Message *message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 56
    functionName: NAME_OWNERSHIP_NULL
    functionSourceFile: /src/dbus-broker/src/bus/name.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NAME_OWNERSHIP_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 77
    functionName: NAME_INIT
    functionSourceFile: /src/dbus-broker/src/bus/name.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NAME_INIT(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 123
    functionName: NAME_SET_INIT_FROM_OWNER
    functionSourceFile: /src/dbus-broker/src/bus/name.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NAME_SET_INIT_FROM_OWNER(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: NAME_SET_INIT_FROM_SNAPSHOT
    functionSourceFile: /src/dbus-broker/src/bus/name.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NAME_SET_INIT_FROM_SNAPSHOT(_x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ref_inc
      Src: /src/dbus-broker/src/bus/name.h:184,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - Name*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 182
    functionDepth: 2
    functionLinenumber: 182
    functionLinenumberEnd: 186
    functionName: name_ref
    functionSourceFile: /src/dbus-broker/src/bus/name.h
    functionUses: 0
    functionsReached:
    - ref_inc
    linkageType: ''
    returnType: Name
    signature: Name *name_ref(Name *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ref_dec
      Src: /src/dbus-broker/src/bus/name.h:190,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - Name*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 188
    functionDepth: 2
    functionLinenumber: 188
    functionLinenumberEnd: 192
    functionName: name_unref
    functionSourceFile: /src/dbus-broker/src/bus/name.h
    functionUses: 0
    functionsReached:
    - ref_dec
    linkageType: ''
    returnType: Name
    signature: Name *name_unref(Name *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/name.h:195,1
    - Dst: c_list_first
      Src: /src/dbus-broker/src/bus/name.h:195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - Name*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 196
    functionName: name_primary
    functionSourceFile: /src/dbus-broker/src/bus/name.h
    functionUses: 1
    functionsReached:
    - c_list_first
    - c_container_of
    linkageType: ''
    returnType: NameOwnership
    signature: NameOwnership *name_primary(Name *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 72
    functionName: BUS_NULL
    functionSourceFile: /src/dbus-broker/src/bus/bus.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BUS_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 88
    functionName: MATCH_RULE_NULL
    functionSourceFile: /src/dbus-broker/src/bus/match.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MATCH_RULE_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 99
    functionName: MATCH_OWNER_INIT
    functionSourceFile: /src/dbus-broker/src/bus/match.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MATCH_OWNER_INIT(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 115
    functionName: MATCH_REGISTRY_BY_KEYS_INIT
    functionSourceFile: /src/dbus-broker/src/bus/match.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MATCH_REGISTRY_BY_KEYS_INIT(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 129
    functionName: MATCH_REGISTRY_BY_MEMBER_INIT
    functionSourceFile: /src/dbus-broker/src/bus/match.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MATCH_REGISTRY_BY_MEMBER_INIT(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 143
    functionName: MATCH_REGISTRY_BY_INTERFACE_INIT
    functionSourceFile: /src/dbus-broker/src/bus/match.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MATCH_REGISTRY_BY_INTERFACE_INIT(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 156
    functionName: MATCH_REGISTRY_BY_PATH_INIT
    functionSourceFile: /src/dbus-broker/src/bus/match.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MATCH_REGISTRY_BY_PATH_INIT(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 166
    functionName: MATCH_REGISTRY_INIT
    functionSourceFile: /src/dbus-broker/src/bus/match.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MATCH_REGISTRY_INIT(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 59
    functionName: ACTIVATION_NULL
    functionSourceFile: /src/dbus-broker/src/bus/activation.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ACTIVATION_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 31
    functionName: LISTENER_NULL
    functionSourceFile: /src/dbus-broker/src/bus/listener.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: LISTENER_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _v
    - ','
    - _p
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: POLICY_VERDICT_INIT_WITH
    functionSourceFile: /src/dbus-broker/src/bus/policy.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: POLICY_VERDICT_INIT_WITH(_v, _p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 62
    functionName: POLICY_XMIT_NULL
    functionSourceFile: /src/dbus-broker/src/bus/policy.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: POLICY_XMIT_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 80
    functionName: POLICY_BATCH_NAME_NULL
    functionSourceFile: /src/dbus-broker/src/bus/policy.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: POLICY_BATCH_NAME_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 92
    functionName: POLICY_BATCH_NULL
    functionSourceFile: /src/dbus-broker/src/bus/policy.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: POLICY_BATCH_NULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: POLICY_REGISTRY_NODE_NULL
    functionSourceFile: /src/dbus-broker/src/bus/policy.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: POLICY_REGISTRY_NODE_NULL(_x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ref_inc
      Src: /src/dbus-broker/src/bus/policy.h:195,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - batch
    argTypes:
    - PolicyBatch*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 193
    functionDepth: 2
    functionLinenumber: 193
    functionLinenumberEnd: 197
    functionName: policy_batch_ref
    functionSourceFile: /src/dbus-broker/src/bus/policy.h
    functionUses: 0
    functionsReached:
    - ref_inc
    linkageType: ''
    returnType: PolicyBatch
    signature: PolicyBatch *policy_batch_ref(PolicyBatch *batch)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ref_dec
      Src: /src/dbus-broker/src/bus/policy.h:201,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - batch
    argTypes:
    - PolicyBatch*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 199
    functionDepth: 2
    functionLinenumber: 199
    functionLinenumberEnd: 203
    functionName: policy_batch_unref
    functionSourceFile: /src/dbus-broker/src/bus/policy.h
    functionUses: 0
    functionsReached:
    - ref_dec
    linkageType: ''
    returnType: PolicyBatch
    signature: PolicyBatch *policy_batch_unref(PolicyBatch *batch)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/bus/policy.c:106,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/policy.c:107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - xmit
    argTypes:
    - PolicyXmit*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 110
    functionName: policy_xmit_free
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - c_list_unlink
    - free
    linkageType: ''
    returnType: PolicyXmit
    signature: PolicyXmit *policy_xmit_free(PolicyXmit *xmit)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/policy.c:122,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/policy.c:126,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/policy.c:127,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/policy.c:128,1
    - Dst: calloc
      Src: /src/dbus-broker/src/bus/policy.c:130,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/policy.c:132,1
    - Dst: POLICY_XMIT_NULL
      Src: /src/dbus-broker/src/bus/policy.c:134,1
    - Dst: stpcpy
      Src: /src/dbus-broker/src/bus/policy.c:143,1
    - Dst: stpcpy
      Src: /src/dbus-broker/src/bus/policy.c:147,1
    - Dst: stpcpy
      Src: /src/dbus-broker/src/bus/policy.c:151,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 8
    argNames:
    - xmitp
    - type
    - broadcast
    - path
    - interface
    - member
    - min_fds
    - max_fds
    argTypes:
    - PolicyXmit**
    - unsigned int
    - unsigned int
    - char*
    - char*
    - char*
    - uint64_t
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 157
    functionName: policy_xmit_new
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - strlen
    - calloc
    - error_origin
    - stpcpy
    - _c_cleanup_
    - POLICY_XMIT_NULL
    linkageType: ''
    returnType: int
    signature: "int policy_xmit_new(PolicyXmit **xmitp,\n                           unsigned
      int type,\n                           unsigned int broadcast,\n                           const
      char *path,\n                           const char *interface,\n                           const
      char *member,\n                           uint64_t min_fds,\n                           uint64_t
      max_fds)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/policy.c:160,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/policy.c:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - t
    - k
    - n
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 163
    functionName: policy_batch_name_compare
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - strcmp
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int policy_batch_name_compare(CRBTree *t, void *k, CRBNode *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/bus/policy.c:171,1
    - Dst: policy_xmit_free
      Src: /src/dbus-broker/src/bus/policy.c:172,1
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/bus/policy.c:173,1
    - Dst: policy_xmit_free
      Src: /src/dbus-broker/src/bus/policy.c:174,1
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/bus/policy.c:176,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/policy.c:177,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - PolicyBatchName*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 180
    functionName: policy_batch_name_free
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - c_rbnode_unlink
    - policy_xmit_free
    - free
    - c_list_first_entry
    linkageType: ''
    returnType: PolicyBatchName
    signature: PolicyBatchName *policy_batch_name_free(PolicyBatchName *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/policy.c:185,1
    - Dst: calloc
      Src: /src/dbus-broker/src/bus/policy.c:187,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/policy.c:187,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/policy.c:189,1
    - Dst: POLICY_BATCH_NAME_NULL
      Src: /src/dbus-broker/src/bus/policy.c:191,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/bus/policy.c:193,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - namep
    - batch
    - name_str
    argTypes:
    - PolicyBatchName**
    - PolicyBatch*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 184
    functionDepth: 1
    functionLinenumber: 184
    functionLinenumberEnd: 198
    functionName: policy_batch_name_new
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - strcpy
    - strlen
    - calloc
    - error_origin
    - _c_cleanup_
    - POLICY_BATCH_NAME_NULL
    linkageType: ''
    returnType: int
    signature: int policy_batch_name_new(PolicyBatchName **namep, PolicyBatch *batch,
      const char *name_str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/policy.c:204,1
    - Dst: calloc
      Src: /src/dbus-broker/src/bus/policy.c:206,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/policy.c:208,1
    - Dst: POLICY_BATCH_NULL
      Src: /src/dbus-broker/src/bus/policy.c:210,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - batchp
    argTypes:
    - PolicyBatch**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 203
    functionDepth: 1
    functionLinenumber: 203
    functionLinenumberEnd: 215
    functionName: policy_batch_new
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - _c_cleanup_
    - error_origin
    - calloc
    - POLICY_BATCH_NULL
    linkageType: ''
    returnType: int
    signature: int policy_batch_new(PolicyBatch **batchp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/policy.c:219,1
    - Dst: c_rbtree_for_each_entry_safe_postorder_unlink
      Src: /src/dbus-broker/src/bus/policy.c:222,1
    - Dst: policy_batch_name_free
      Src: /src/dbus-broker/src/bus/policy.c:223,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/policy.c:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - n_refs
    - userdata
    argTypes:
    - unsigned long*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 218
    functionDepth: 2
    functionLinenumber: 218
    functionLinenumberEnd: 226
    functionName: policy_batch_free
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - free
    - c_container_of
    - c_rbtree_for_each_entry_safe_postorder_unlink
    - policy_batch_name_free
    linkageType: ''
    returnType: void
    signature: void policy_batch_free(_Atomic unsigned long *n_refs, void *userdata)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/bus/policy.c:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - batch
    - name_str
    argTypes:
    - PolicyBatch*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 234
    functionName: policy_batch_find_name
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - c_rbtree_find_entry
    linkageType: ''
    returnType: PolicyBatchName
    signature: PolicyBatchName *policy_batch_find_name(PolicyBatch *batch, const char
      *name_str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/bus/policy.c:241,1
    - Dst: policy_batch_name_new
      Src: /src/dbus-broker/src/bus/policy.c:243,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:245,1
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/bus/policy.c:247,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/policy.c:249,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - batch
    - namep
    - name_str
    argTypes:
    - PolicyBatch*
    - PolicyBatchName**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 236
    functionDepth: 2
    functionLinenumber: 236
    functionLinenumberEnd: 254
    functionName: policy_batch_at_name
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - c_rbtree_find_slot
    - c_rbtree_add
    - error_trace
    - policy_batch_name_new
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int policy_batch_at_name(PolicyBatch *batch, PolicyBatchName **namep,
      const char *name_str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: policy_batch_at_name
      Src: /src/dbus-broker/src/bus/policy.c:262,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:264,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - batch
    - name_str
    - verdict
    argTypes:
    - PolicyBatch*
    - char*
    - PolicyVerdict
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 256
    functionDepth: 3
    functionLinenumber: 256
    functionLinenumberEnd: 274
    functionName: policy_batch_add_own
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - policy_batch_at_name
    - error_trace
    linkageType: ''
    returnType: int
    signature: "int policy_batch_add_own(PolicyBatch *batch,\n                                const
      char *name_str,\n                                PolicyVerdict verdict)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: policy_batch_at_name
      Src: /src/dbus-broker/src/bus/policy.c:282,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:284,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - batch
    - name_str
    - verdict
    argTypes:
    - PolicyBatch*
    - char*
    - PolicyVerdict
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 276
    functionDepth: 3
    functionLinenumber: 276
    functionLinenumberEnd: 294
    functionName: policy_batch_add_own_prefix
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - policy_batch_at_name
    - error_trace
    linkageType: ''
    returnType: int
    signature: "int policy_batch_add_own_prefix(PolicyBatch *batch,\n                                       const
      char *name_str,\n                                       PolicyVerdict verdict)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/policy.c:306,1
    - Dst: policy_xmit_new
      Src: /src/dbus-broker/src/bus/policy.c:310,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:312,1
    - Dst: policy_batch_at_name
      Src: /src/dbus-broker/src/bus/policy.c:316,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:318,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/bus/policy.c:320,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 10
    argNames:
    - batch
    - name_str
    - verdict
    - type
    - broadcast
    - path
    - interface
    - member
    - min_fds
    - max_fds
    argTypes:
    - PolicyBatch*
    - char*
    - PolicyVerdict
    - unsigned int
    - unsigned int
    - char*
    - char*
    - char*
    - uint64_t
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 296
    functionDepth: 3
    functionLinenumber: 296
    functionLinenumberEnd: 323
    functionName: policy_batch_add_send
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - c_list_link_tail
    - _c_cleanup_
    - error_trace
    - policy_batch_at_name
    - policy_xmit_new
    linkageType: ''
    returnType: int
    signature: "int policy_batch_add_send(PolicyBatch *batch,\n                                 const
      char *name_str,\n                                 PolicyVerdict verdict,\n                                 unsigned
      int type,\n                                 unsigned int broadcast,\n                                 const
      char *path,\n                                 const char *interface,\n                                 const
      char *member,\n                                 uint64_t min_fds,\n                                 uint64_t
      max_fds)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/policy.c:335,1
    - Dst: policy_xmit_new
      Src: /src/dbus-broker/src/bus/policy.c:339,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:341,1
    - Dst: policy_batch_at_name
      Src: /src/dbus-broker/src/bus/policy.c:345,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:347,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/bus/policy.c:349,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 10
    argNames:
    - batch
    - name_str
    - verdict
    - type
    - broadcast
    - path
    - interface
    - member
    - min_fds
    - max_fds
    argTypes:
    - PolicyBatch*
    - char*
    - PolicyVerdict
    - unsigned int
    - unsigned int
    - char*
    - char*
    - char*
    - uint64_t
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 325
    functionDepth: 3
    functionLinenumber: 325
    functionLinenumberEnd: 352
    functionName: policy_batch_add_recv
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - c_list_link_tail
    - _c_cleanup_
    - error_trace
    - policy_batch_at_name
    - policy_xmit_new
    linkageType: ''
    returnType: int
    signature: "int policy_batch_add_recv(PolicyBatch *batch,\n                                 const
      char *name_str,\n                                 PolicyVerdict verdict,\n                                 unsigned
      int type,\n                                 unsigned int broadcast,\n                                 const
      char *path,\n                                 const char *interface,\n                                 const
      char *member,\n                                 uint64_t min_fds,\n                                 uint64_t
      max_fds)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/policy.c:355,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - t
    - k
    - n
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 368
    functionName: policy_registry_node_compare
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int policy_registry_node_compare(CRBTree *t, void *k, CRBNode *n)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/bus/policy.c:374,1
    - Dst: policy_batch_unref
      Src: /src/dbus-broker/src/bus/policy.c:375,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/policy.c:376,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - PolicyRegistryNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 370
    functionDepth: 3
    functionLinenumber: 370
    functionLinenumberEnd: 379
    functionName: policy_registry_node_free
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - c_rbnode_unlink
    - policy_batch_unref
    - free
    linkageType: ''
    returnType: PolicyRegistryNode
    signature: PolicyRegistryNode *policy_registry_node_free(PolicyRegistryNode *node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/policy.c:384,1
    - Dst: calloc
      Src: /src/dbus-broker/src/bus/policy.c:387,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/policy.c:389,1
    - Dst: POLICY_REGISTRY_NODE_NULL
      Src: /src/dbus-broker/src/bus/policy.c:391,1
    - Dst: policy_batch_new
      Src: /src/dbus-broker/src/bus/policy.c:395,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:397,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - nodep
    - uidgid_start
    - uidgid_end
    argTypes:
    - PolicyRegistryNode**
    - uint32_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 383
    functionDepth: 2
    functionLinenumber: 383
    functionLinenumberEnd: 402
    functionName: policy_registry_node_new
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - calloc
    - error_origin
    - _c_cleanup_
    - error_trace
    - policy_batch_new
    - POLICY_REGISTRY_NODE_NULL
    linkageType: ''
    returnType: int
    signature: int policy_registry_node_new(PolicyRegistryNode **nodep, uint32_t uidgid_start,
      uint32_t uidgid_end)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/policy.c:408,1
    - Dst: calloc
      Src: /src/dbus-broker/src/bus/policy.c:411,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/policy.c:413,1
    - Dst: bus_apparmor_registry_new
      Src: /src/dbus-broker/src/bus/policy.c:417,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/policy.c:419,1
    - Dst: bus_selinux_registry_new
      Src: /src/dbus-broker/src/bus/policy.c:421,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/policy.c:423,1
    - Dst: policy_batch_new
      Src: /src/dbus-broker/src/bus/policy.c:425,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:427,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - registryp
    - fallback_seclabel
    argTypes:
    - PolicyRegistry**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 407
    functionDepth: 2
    functionLinenumber: 407
    functionLinenumberEnd: 432
    functionName: policy_registry_new
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 2
    functionsReached:
    - calloc
    - bus_selinux_registry_new
    - error_origin
    - bus_apparmor_registry_new
    - _c_cleanup_
    - error_trace
    - policy_batch_new
    - error_fold
    linkageType: ''
    returnType: int
    signature: int policy_registry_new(PolicyRegistry **registryp, const char *fallback_seclabel)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_for_each_entry_safe_postorder_unlink
      Src: /src/dbus-broker/src/bus/policy.c:443,1
    - Dst: policy_registry_node_free
      Src: /src/dbus-broker/src/bus/policy.c:444,1
    - Dst: c_rbtree_for_each_entry_safe_postorder_unlink
      Src: /src/dbus-broker/src/bus/policy.c:445,1
    - Dst: policy_registry_node_free
      Src: /src/dbus-broker/src/bus/policy.c:446,1
    - Dst: c_rbtree_for_each_entry_safe_postorder_unlink
      Src: /src/dbus-broker/src/bus/policy.c:447,1
    - Dst: policy_registry_node_free
      Src: /src/dbus-broker/src/bus/policy.c:448,1
    - Dst: policy_batch_unref
      Src: /src/dbus-broker/src/bus/policy.c:450,1
    - Dst: bus_selinux_registry_unref
      Src: /src/dbus-broker/src/bus/policy.c:451,1
    - Dst: bus_apparmor_registry_unref
      Src: /src/dbus-broker/src/bus/policy.c:452,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/policy.c:453,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - registry
    argTypes:
    - PolicyRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 437
    functionDepth: 4
    functionLinenumber: 437
    functionLinenumberEnd: 456
    functionName: policy_registry_free
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 2
    functionsReached:
    - c_rbtree_for_each_entry_safe_postorder_unlink
    - bus_selinux_registry_unref
    - policy_registry_node_free
    - free
    - policy_batch_unref
    - bus_apparmor_registry_unref
    linkageType: ''
    returnType: PolicyRegistry
    signature: PolicyRegistry *policy_registry_free(PolicyRegistry *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/bus/policy.c:464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - registry
    - uid
    argTypes:
    - PolicyRegistry*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 458
    functionDepth: 0
    functionLinenumber: 458
    functionLinenumberEnd: 469
    functionName: policy_registry_find_uid
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - c_rbtree_find_entry
    linkageType: ''
    returnType: PolicyRegistryNode
    signature: PolicyRegistryNode *policy_registry_find_uid(PolicyRegistry *registry,
      uint32_t uid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/bus/policy.c:477,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - registry
    - gid
    argTypes:
    - PolicyRegistry*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 471
    functionDepth: 0
    functionLinenumber: 471
    functionLinenumberEnd: 482
    functionName: policy_registry_find_gid
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - c_rbtree_find_entry
    linkageType: ''
    returnType: PolicyRegistryNode
    signature: PolicyRegistryNode *policy_registry_find_gid(PolicyRegistry *registry,
      uint32_t gid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/bus/policy.c:493,1
    - Dst: policy_registry_node_new
      Src: /src/dbus-broker/src/bus/policy.c:498,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:500,1
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/bus/policy.c:502,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/policy.c:504,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 4
    argNames:
    - tree
    - nodep
    - uidgid_start
    - uidgid_end
    argTypes:
    - CRBTree*
    - PolicyRegistryNode**
    - uint32_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 484
    functionDepth: 3
    functionLinenumber: 484
    functionLinenumberEnd: 509
    functionName: policy_registry_at_uidgid
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - c_rbtree_find_slot
    - c_rbtree_add
    - policy_registry_node_new
    - error_trace
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int policy_registry_at_uidgid(CRBTree *tree, PolicyRegistryNode **nodep,
      uint32_t uidgid_start, uint32_t uidgid_end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: policy_registry_at_uidgid
      Src: /src/dbus-broker/src/bus/policy.c:512,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - registry
    - nodep
    - uid
    argTypes:
    - PolicyRegistry*
    - PolicyRegistryNode**
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 511
    functionDepth: 4
    functionLinenumber: 511
    functionLinenumberEnd: 513
    functionName: policy_registry_at_uid
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - policy_registry_at_uidgid
    linkageType: ''
    returnType: int
    signature: int policy_registry_at_uid(PolicyRegistry *registry, PolicyRegistryNode
      **nodep, uint32_t uid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: policy_registry_at_uidgid
      Src: /src/dbus-broker/src/bus/policy.c:516,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - registry
    - nodep
    - uid_start
    - uid_end
    argTypes:
    - PolicyRegistry*
    - PolicyRegistryNode**
    - uint32_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 515
    functionDepth: 4
    functionLinenumber: 515
    functionLinenumberEnd: 517
    functionName: policy_registry_at_uid_range
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - policy_registry_at_uidgid
    linkageType: ''
    returnType: int
    signature: int policy_registry_at_uid_range(PolicyRegistry *registry, PolicyRegistryNode
      **nodep, uint32_t uid_start, uint32_t uid_end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: policy_registry_at_uidgid
      Src: /src/dbus-broker/src/bus/policy.c:520,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - registry
    - nodep
    - gid
    argTypes:
    - PolicyRegistry*
    - PolicyRegistryNode**
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 519
    functionDepth: 4
    functionLinenumber: 519
    functionLinenumberEnd: 521
    functionName: policy_registry_at_gid
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - policy_registry_at_uidgid
    linkageType: ''
    returnType: int
    signature: int policy_registry_at_gid(PolicyRegistry *registry, PolicyRegistryNode
      **nodep, uint32_t gid)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/policy.c:533,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/policy.c:536,1
    - Dst: c_dvar_more
      Src: /src/dbus-broker/src/bus/policy.c:538,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/policy.c:539,1
    - Dst: policy_batch_add_own_prefix
      Src: /src/dbus-broker/src/bus/policy.c:547,1
    - Dst: policy_batch_add_own
      Src: /src/dbus-broker/src/bus/policy.c:549,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:551,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/policy.c:554,1
    - Dst: c_dvar_more
      Src: /src/dbus-broker/src/bus/policy.c:556,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/policy.c:557,1
    - Dst: policy_batch_add_send
      Src: /src/dbus-broker/src/bus/policy.c:572,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:583,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/policy.c:586,1
    - Dst: c_dvar_more
      Src: /src/dbus-broker/src/bus/policy.c:588,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/policy.c:589,1
    - Dst: policy_batch_add_recv
      Src: /src/dbus-broker/src/bus/policy.c:604,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:615,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/policy.c:618,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 3
    argNames:
    - registry
    - batch
    - v
    argTypes:
    - PolicyRegistry*
    - PolicyBatch*
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 621
      start: 523
    functionDepth: 4
    functionLinenumber: 523
    functionLinenumberEnd: 621
    functionName: policy_registry_import_batch
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - policy_batch_add_own
    - c_dvar_read
    - policy_batch_add_recv
    - policy_batch_add_own_prefix
    - error_trace
    - policy_batch_add_send
    - c_dvar_more
    linkageType: ''
    returnType: int
    signature: "int policy_registry_import_batch(PolicyRegistry *registry,\n                                        PolicyBatch
      *batch,\n                                        CDVar *v)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/policy.c:632,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/policy.c:634,1
    - Dst: c_dvar_more
      Src: /src/dbus-broker/src/bus/policy.c:636,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/policy.c:639,1
    - Dst: policy_registry_import_batch
      Src: /src/dbus-broker/src/bus/policy.c:642,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:644,1
    - Dst: policy_registry_at_uid
      Src: /src/dbus-broker/src/bus/policy.c:646,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:648,1
    - Dst: policy_registry_import_batch
      Src: /src/dbus-broker/src/bus/policy.c:650,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:652,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/policy.c:655,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/policy.c:658,1
    - Dst: c_dvar_more
      Src: /src/dbus-broker/src/bus/policy.c:660,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/policy.c:664,1
    - Dst: policy_registry_at_gid
      Src: /src/dbus-broker/src/bus/policy.c:670,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:672,1
    - Dst: policy_registry_at_uid_range
      Src: /src/dbus-broker/src/bus/policy.c:674,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:676,1
    - Dst: policy_registry_import_batch
      Src: /src/dbus-broker/src/bus/policy.c:679,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/policy.c:681,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/policy.c:683,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/policy.c:686,1
    - Dst: c_dvar_more
      Src: /src/dbus-broker/src/bus/policy.c:688,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/policy.c:691,1
    - Dst: bus_selinux_registry_add_name
      Src: /src/dbus-broker/src/bus/policy.c:693,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/policy.c:695,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/policy.c:698,1
    - Dst: bus_apparmor_set_bus_type
      Src: /src/dbus-broker/src/bus/policy.c:700,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/policy.c:702,1
    - Dst: c_dvar_get_poison
      Src: /src/dbus-broker/src/bus/policy.c:704,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 53
    argCount: 2
    argNames:
    - registry
    - v
    argTypes:
    - PolicyRegistry*
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 626
    functionDepth: 5
    functionLinenumber: 626
    functionLinenumberEnd: 709
    functionName: policy_registry_import
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 2
    functionsReached:
    - c_dvar_read
    - bus_apparmor_set_bus_type
    - c_dvar_get_poison
    - policy_registry_at_uid_range
    - policy_registry_at_uid
    - policy_registry_at_gid
    - bus_selinux_registry_add_name
    - error_trace
    - policy_registry_import_batch
    - c_dvar_more
    - error_fold
    linkageType: ''
    returnType: int
    signature: int policy_registry_import(PolicyRegistry *registry, CDVar *v)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/policy.c:720,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/policy.c:724,1
    - Dst: calloc
      Src: /src/dbus-broker/src/bus/policy.c:733,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/policy.c:735,1
    - Dst: bus_apparmor_registry_ref
      Src: /src/dbus-broker/src/bus/policy.c:739,1
    - Dst: bus_selinux_registry_ref
      Src: /src/dbus-broker/src/bus/policy.c:740,1
    - Dst: strdup
      Src: /src/dbus-broker/src/bus/policy.c:742,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/policy.c:744,1
    - Dst: policy_registry_find_uid
      Src: /src/dbus-broker/src/bus/policy.c:747,1
    - Dst: policy_batch_ref
      Src: /src/dbus-broker/src/bus/policy.c:749,1
    - Dst: policy_batch_ref
      Src: /src/dbus-broker/src/bus/policy.c:751,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/policy.c:754,1
    - Dst: policy_batch_ref
      Src: /src/dbus-broker/src/bus/policy.c:760,1
    - Dst: policy_registry_find_gid
      Src: /src/dbus-broker/src/bus/policy.c:765,1
    - Dst: policy_batch_ref
      Src: /src/dbus-broker/src/bus/policy.c:767,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/policy.c:770,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 38
    argCount: 6
    argNames:
    - snapshotp
    - registry
    - seclabel
    - uid
    - gids
    - n_gids
    argTypes:
    - PolicySnapshot**
    - PolicyRegistry*
    - char*
    - uint32_t
    - uint32_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 775
      start: 714
    functionDepth: 3
    functionLinenumber: 714
    functionLinenumberEnd: 775
    functionName: policy_snapshot_new
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 1
    functionsReached:
    - calloc
    - policy_batch_ref
    - bus_selinux_registry_ref
    - error_origin
    - c_rbtree_for_each_entry
    - _c_cleanup_
    - policy_registry_find_uid
    - strdup
    - policy_registry_find_gid
    - c_assert
    - bus_apparmor_registry_ref
    linkageType: ''
    returnType: int
    signature: "int policy_snapshot_new(PolicySnapshot **snapshotp,\n                        PolicyRegistry
      *registry,\n                        const char *seclabel,\n                        uint32_t
      uid,\n                        const uint32_t *gids,\n                        size_t
      n_gids)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: policy_batch_unref
      Src: /src/dbus-broker/src/bus/policy.c:785,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/policy.c:786,1
    - Dst: bus_selinux_registry_unref
      Src: /src/dbus-broker/src/bus/policy.c:787,1
    - Dst: bus_apparmor_registry_unref
      Src: /src/dbus-broker/src/bus/policy.c:788,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/policy.c:789,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - snapshot
    argTypes:
    - PolicySnapshot*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 792
      start: 780
    functionDepth: 3
    functionLinenumber: 780
    functionLinenumberEnd: 792
    functionName: policy_snapshot_free
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 1
    functionsReached:
    - bus_apparmor_registry_unref
    - bus_selinux_registry_unref
    - policy_batch_unref
    - free
    linkageType: ''
    returnType: PolicySnapshot
    signature: PolicySnapshot *policy_snapshot_free(PolicySnapshot *snapshot)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/policy.c:798,1
    - Dst: batches::batches
      Src: /src/dbus-broker/src/bus/policy.c:801,1
    - Dst: calloc::calloc
      Src: /src/dbus-broker/src/bus/policy.c:801,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/policy.c:803,1
    - Dst: POLICY_SNAPSHOT_NULL::POLICY_SNAPSHOT_NULL
      Src: /src/dbus-broker/src/bus/policy.c:805,1
    - Dst: bus_apparmor_registry_ref
      Src: /src/dbus-broker/src/bus/policy.c:807,1
    - Dst: bus_selinux_registry_ref
      Src: /src/dbus-broker/src/bus/policy.c:808,1
    - Dst: strdup
      Src: /src/dbus-broker/src/bus/policy.c:810,1
    - Dst: seclabel::seclabel
      Src: /src/dbus-broker/src/bus/policy.c:811,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/policy.c:812,1
    - Dst: n_batches::n_batches
      Src: /src/dbus-broker/src/bus/policy.c:815,1
    - Dst: batches::batches
      Src: /src/dbus-broker/src/bus/policy.c:815,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - snapshot
    - newp
    argTypes:
    - PolicySnapshot*
    - PolicySnapshot**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 820
      start: 797
    functionDepth: 1
    functionLinenumber: 797
    functionLinenumberEnd: 820
    functionName: policy_snapshot_dup
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - calloc::calloc
    - POLICY_SNAPSHOT_NULL::POLICY_SNAPSHOT_NULL
    - seclabel::seclabel
    - batches::batches
    - error_origin
    - bus_selinux_registry_ref
    - _c_cleanup_
    - strdup
    - n_batches::n_batches
    - bus_apparmor_registry_ref
    linkageType: ''
    returnType: int
    signature: int policy_snapshot_dup(PolicySnapshot *snapshot, PolicySnapshot **newp)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - snapshot
    argTypes:
    - PolicySnapshot*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 834
      start: 825
    functionDepth: 0
    functionLinenumber: 825
    functionLinenumberEnd: 834
    functionName: policy_snapshot_check_connect
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int policy_snapshot_check_connect(PolicySnapshot *snapshot)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: bus_apparmor_check_own
      Src: /src/dbus-broker/src/bus/policy.c:847,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/policy.c:852,1
    - Dst: bus_selinux_check_own
      Src: /src/dbus-broker/src/bus/policy.c:855,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/policy.c:860,1
    - Dst: strchrnul
      Src: /src/dbus-broker/src/bus/policy.c:870,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/policy.c:873,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/bus/policy.c:874,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 38
    argCount: 2
    argNames:
    - snapshot
    - name_str
    argTypes:
    - PolicySnapshot*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 898
      start: 839
    functionDepth: 1
    functionLinenumber: 839
    functionLinenumberEnd: 898
    functionName: policy_snapshot_check_own
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - bus_selinux_check_own
    - strchrnul
    - strncmp
    - c_container_of
    - bus_apparmor_check_own
    - error_fold
    linkageType: ''
    returnType: int
    signature: int policy_snapshot_check_own(PolicySnapshot *snapshot, const char
      *name_str)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: policy_batch_find_name
      Src: /src/dbus-broker/src/bus/policy.c:914,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/policy.c:929,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/policy.c:933,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/policy.c:937,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 35
    argCount: 10
    argNames:
    - batch
    - is_send
    - verdict
    - name_str
    - interface
    - member
    - path
    - type
    - broadcast
    - n_fds
    argTypes:
    - PolicyBatch*
    - bool
    - PolicyVerdict*
    - char*
    - char*
    - char*
    - char*
    - unsigned int
    - bool
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 959
      start: 900
    functionDepth: 1
    functionLinenumber: 900
    functionLinenumberEnd: 959
    functionName: policy_snapshot_check_xmit_name
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - strcmp
    - policy_batch_find_name
    linkageType: ''
    returnType: void
    signature: "void policy_snapshot_check_xmit_name(PolicyBatch *batch,\n                                            bool
      is_send,\n                                            PolicyVerdict *verdict,\n
      \                                           const char *name_str,\n                                            const
      char *interface,\n                                            const char *member,\n
      \                                           const char *path,\n                                            unsigned
      int type,\n                                            bool broadcast,\n                                            size_t
      n_fds)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/policy.c:929,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/policy.c:933,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/policy.c:937,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 958
      start: 920
    functionDepth: 0
    functionLinenumber: 920
    functionLinenumberEnd: 958
    functionName: c_list_for_each_entry
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 10
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: void
    signature: void c_list_for_each_entry(xmit, list, batch_link)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: policy_snapshot_check_xmit_name
      Src: /src/dbus-broker/src/bus/policy.c:982,1
    - Dst: policy_snapshot_check_xmit_name
      Src: /src/dbus-broker/src/bus/policy.c:999,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/policy.c:1015,1
    - Dst: policy_snapshot_check_xmit_name
      Src: /src/dbus-broker/src/bus/policy.c:1018,1
    - Dst: policy_snapshot_check_xmit_name
      Src: /src/dbus-broker/src/bus/policy.c:1035,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/policy.c:1046,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 10
    argNames:
    - batch
    - is_send
    - verdict
    - nameset
    - interface
    - method
    - path
    - type
    - broadcast
    - n_fds
    argTypes:
    - PolicyBatch*
    - bool
    - PolicyVerdict*
    - NameSet*
    - char*
    - char*
    - char*
    - unsigned int
    - bool
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1048
      start: 961
    functionDepth: 2
    functionLinenumber: 961
    functionLinenumberEnd: 1048
    functionName: policy_snapshot_check_xmit
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - c_assert
    - policy_snapshot_check_xmit_name
    - c_rbtree_for_each_entry
    linkageType: ''
    returnType: void
    signature: "void policy_snapshot_check_xmit(PolicyBatch *batch,\n                                       bool
      is_send,\n                                       PolicyVerdict *verdict,\n                                       NameSet
      *nameset,\n                                       const char *interface,\n                                       const
      char *method,\n                                       const char *path,\n                                       unsigned
      int type,\n                                       bool broadcast,\n                                       size_t
      n_fds)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: bus_apparmor_check_xmit
      Src: /src/dbus-broker/src/bus/policy.c:1067,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/policy.c:1073,1
    - Dst: bus_selinux_check_send
      Src: /src/dbus-broker/src/bus/policy.c:1076,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/policy.c:1081,1
    - Dst: policy_snapshot_check_xmit
      Src: /src/dbus-broker/src/bus/policy.c:1085,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 10
    argNames:
    - snapshot
    - subject_seclabel
    - subject
    - subject_id
    - interface
    - method
    - path
    - type
    - broadcast
    - n_fds
    argTypes:
    - PolicySnapshot*
    - char*
    - NameSet*
    - uint64_t
    - char*
    - char*
    - char*
    - unsigned int
    - bool
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1097
      start: 1053
    functionDepth: 3
    functionLinenumber: 1053
    functionLinenumberEnd: 1097
    functionName: policy_snapshot_check_send
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - error_fold
    - policy_snapshot_check_xmit
    - bus_selinux_check_send
    - bus_apparmor_check_xmit
    linkageType: ''
    returnType: int
    signature: "int policy_snapshot_check_send(PolicySnapshot *snapshot,\n                               const
      char *subject_seclabel,\n                               NameSet *subject,\n
      \                              uint64_t subject_id,\n                               const
      char *interface,\n                               const char *method,\n                               const
      char *path,\n                               unsigned int type,\n                               bool
      broadcast,\n                               size_t n_fds)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: bus_apparmor_check_xmit
      Src: /src/dbus-broker/src/bus/policy.c:1116,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/policy.c:1122,1
    - Dst: policy_snapshot_check_xmit
      Src: /src/dbus-broker/src/bus/policy.c:1126,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 10
    argNames:
    - snapshot
    - subject_seclabel
    - subject
    - subject_id
    - interface
    - method
    - path
    - type
    - broadcast
    - n_fds
    argTypes:
    - PolicySnapshot*
    - char*
    - NameSet*
    - uint64_t
    - char*
    - char*
    - char*
    - unsigned int
    - bool
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1138
      start: 1102
    functionDepth: 3
    functionLinenumber: 1102
    functionLinenumberEnd: 1138
    functionName: policy_snapshot_check_receive
    functionSourceFile: /src/dbus-broker/src/bus/policy.c
    functionUses: 0
    functionsReached:
    - error_fold
    - policy_snapshot_check_xmit
    - bus_apparmor_check_xmit
    linkageType: ''
    returnType: int
    signature: "int policy_snapshot_check_receive(PolicySnapshot *snapshot,\n                                  const
      char *subject_seclabel,\n                                  NameSet *subject,\n
      \                                 uint64_t subject_id,\n                                  const
      char *interface,\n                                  const char *method,\n                                  const
      char *path,\n                                  unsigned int type,\n                                  bool
      broadcast,\n                                  size_t n_fds)"
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: connection_dispatch
      Src: /src/dbus-broker/src/bus/peer.c:37,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:39,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/peer.c:42,1
    - Dst: connection_dequeue
      Src: /src/dbus-broker/src/bus/peer.c:44,1
    - Dst: NAME_SET_INIT_FROM_OWNER
      Src: /src/dbus-broker/src/bus/peer.c:48,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/bus/peer.c:51,1
    - Dst: bus_log_append_sender
      Src: /src/dbus-broker/src/bus/peer.c:52,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/peer.c:54,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:57,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/bus/peer.c:61,1
    - Dst: bus_log_append_sender
      Src: /src/dbus-broker/src/bus/peer.c:62,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/peer.c:64,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:67,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/bus/peer.c:71,1
    - Dst: bus_log_append_sender
      Src: /src/dbus-broker/src/bus/peer.c:72,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/peer.c:74,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:77,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:82,1
    - Dst: message_parse_metadata
      Src: /src/dbus-broker/src/bus/peer.c:87,1
    - Dst: NAME_SET_INIT_FROM_OWNER
      Src: /src/dbus-broker/src/bus/peer.c:89,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/bus/peer.c:92,1
    - Dst: bus_log_append_sender
      Src: /src/dbus-broker/src/bus/peer.c:93,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/peer.c:95,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:98,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/bus/peer.c:102,1
    - Dst: bus_log_append_sender
      Src: /src/dbus-broker/src/bus/peer.c:103,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/peer.c:105,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:108,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/bus/peer.c:112,1
    - Dst: bus_log_append_sender
      Src: /src/dbus-broker/src/bus/peer.c:113,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/peer.c:115,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:118,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:123,1
    - Dst: message_stitch_sender
      Src: /src/dbus-broker/src/bus/peer.c:126,1
    - Dst: metrics_sample_start
      Src: /src/dbus-broker/src/bus/peer.c:128,1
    - Dst: driver_dispatch
      Src: /src/dbus-broker/src/bus/peer.c:129,1
    - Dst: metrics_sample_end
      Src: /src/dbus-broker/src/bus/peer.c:130,1
    - Dst: NAME_SET_INIT_FROM_OWNER
      Src: /src/dbus-broker/src/bus/peer.c:132,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/bus/peer.c:135,1
    - Dst: bus_log_append_sender
      Src: /src/dbus-broker/src/bus/peer.c:136,1
    - Dst: message_log_append
      Src: /src/dbus-broker/src/bus/peer.c:137,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/peer.c:139,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:142,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/bus/peer.c:146,1
    - Dst: bus_log_append_sender
      Src: /src/dbus-broker/src/bus/peer.c:147,1
    - Dst: message_log_append
      Src: /src/dbus-broker/src/bus/peer.c:148,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/peer.c:150,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:153,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:158,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 97
    argCount: 2
    argNames:
    - peer
    - events
    argTypes:
    - Peer*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 31
    functionDepth: 4
    functionLinenumber: 31
    functionLinenumberEnd: 163
    functionName: peer_dispatch_connection
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached:
    - log_commitf
    - connection_dequeue
    - metrics_sample_start
    - log_append_here
    - message_parse_metadata
    - message_stitch_sender
    - message_log_append
    - _c_cleanup_
    - connection_dispatch
    - NAME_SET_INIT_FROM_OWNER
    - driver_dispatch
    - metrics_sample_end
    - bus_log_append_sender
    - error_fold
    linkageType: ''
    returnType: int
    signature: int peer_dispatch_connection(Peer *peer, uint32_t events)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/peer.c:166,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/bus/peer.c:200,1
    - Dst: peer_dispatch_connection
      Src: /src/dbus-broker/src/bus/peer.c:201,1
    - Dst: dispatch_file_events
      Src: /src/dbus-broker/src/bus/peer.c:201,1
    - Dst: metrics_sample_start
      Src: /src/dbus-broker/src/bus/peer.c:208,1
    - Dst: driver_goodbye
      Src: /src/dbus-broker/src/bus/peer.c:209,1
    - Dst: metrics_sample_end
      Src: /src/dbus-broker/src/bus/peer.c:210,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:212,1
    - Dst: connection_shutdown
      Src: /src/dbus-broker/src/bus/peer.c:214,1
    - Dst: connection_close
      Src: /src/dbus-broker/src/bus/peer.c:217,1
    - Dst: metrics_sample_start
      Src: /src/dbus-broker/src/bus/peer.c:219,1
    - Dst: driver_goodbye
      Src: /src/dbus-broker/src/bus/peer.c:220,1
    - Dst: metrics_sample_end
      Src: /src/dbus-broker/src/bus/peer.c:221,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:223,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:225,1
    - Dst: connection_is_running
      Src: /src/dbus-broker/src/bus/peer.c:228,1
    - Dst: peer_free
      Src: /src/dbus-broker/src/bus/peer.c:229,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 1
    argNames:
    - file
    argTypes:
    - DispatchFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 165
    functionDepth: 5
    functionLinenumber: 165
    functionLinenumberEnd: 235
    functionName: peer_dispatch
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 1
    functionsReached:
    - error_fold
    - metrics_sample_start
    - driver_goodbye
    - connection_close
    - c_container_of
    - dispatch_file_events
    - connection_shutdown
    - metrics_sample_end
    - connection_is_running
    - C_ARRAY_SIZE
    - peer_free
    - peer_dispatch_connection
    linkageType: ''
    returnType: int
    signature: int peer_dispatch(DispatchFile *file)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/peer.c:238,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - tree
    - k
    - rb
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 247
    functionName: peer_compare
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached:
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int peer_compare(CRBTree *tree, void *k, CRBNode *rb)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/peer.c:258,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/peer.c:259,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/peer.c:260,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/peer.c:261,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/peer.c:262,1
    - Dst: getsockopt
      Src: /src/dbus-broker/src/bus/peer.c:269,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/peer.c:271,1
    - Dst: user_registry_ref_user
      Src: /src/dbus-broker/src/bus/peer.c:273,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:275,1
    - Dst: sockopt_get_peersec
      Src: /src/dbus-broker/src/bus/peer.c:277,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:279,1
    - Dst: sockopt_get_peergroups
      Src: /src/dbus-broker/src/bus/peer.c:281,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:283,1
    - Dst: sockopt_get_peerpidfd
      Src: /src/dbus-broker/src/bus/peer.c:285,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:290,1
    - Dst: calloc
      Src: /src/dbus-broker/src/bus/peer.c:295,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/peer.c:297,1
    - Dst: PEER_INIT
      Src: /src/dbus-broker/src/bus/peer.c:298,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/bus/peer.c:314,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/bus/peer.c:315,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/bus/peer.c:316,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:321,1
    - Dst: policy_snapshot_new
      Src: /src/dbus-broker/src/bus/peer.c:324,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:326,1
    - Dst: policy_snapshot_check_connect
      Src: /src/dbus-broker/src/bus/peer.c:328,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:330,1
    - Dst: connection_init_server
      Src: /src/dbus-broker/src/bus/peer.c:332,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:339,1
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/bus/peer.c:342,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/peer.c:343,1
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/bus/peer.c:344,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 64
    argCount: 6
    argNames:
    - peerp
    - bus
    - policy
    - guid
    - dispatcher
    - fd
    argTypes:
    - Peer**
    - Bus*
    - PolicyRegistry*
    - char[]
    - DispatchContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 252
    functionDepth: 5
    functionLinenumber: 252
    functionLinenumberEnd: 349
    functionName: peer_new_with_fd
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 1
    functionsReached:
    - user_registry_ref_user
    - calloc
    - policy_snapshot_new
    - connection_init_server
    - PEER_INIT
    - c_rbtree_find_slot
    - error_origin
    - c_rbtree_add
    - getsockopt
    - _c_cleanup_
    - sockopt_get_peerpidfd
    - sockopt_get_peersec
    - policy_snapshot_check_connect
    - user_charge
    - c_assert
    - sockopt_get_peergroups
    - error_fold
    linkageType: ''
    returnType: int
    signature: "int peer_new_with_fd(Peer **peerp,\n                     Bus *bus,\n
      \                    PolicyRegistry *policy,\n                     const char
      guid[],\n                     DispatchContext *dispatcher,\n                     int
      fd)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/peer.c:360,1
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/bus/peer.c:362,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/bus/peer.c:363,1
    - Dst: c_close
      Src: /src/dbus-broker/src/bus/peer.c:367,1
    - Dst: reply_owner_deinit
      Src: /src/dbus-broker/src/bus/peer.c:368,1
    - Dst: reply_registry_deinit
      Src: /src/dbus-broker/src/bus/peer.c:369,1
    - Dst: match_owner_deinit
      Src: /src/dbus-broker/src/bus/peer.c:370,1
    - Dst: match_registry_deinit
      Src: /src/dbus-broker/src/bus/peer.c:371,1
    - Dst: match_registry_deinit
      Src: /src/dbus-broker/src/bus/peer.c:372,1
    - Dst: name_owner_deinit
      Src: /src/dbus-broker/src/bus/peer.c:373,1
    - Dst: policy_snapshot_free
      Src: /src/dbus-broker/src/bus/peer.c:374,1
    - Dst: connection_deinit
      Src: /src/dbus-broker/src/bus/peer.c:375,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/bus/peer.c:376,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/bus/peer.c:377,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/bus/peer.c:378,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/peer.c:379,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/peer.c:380,1
    - Dst: user_unref
      Src: /src/dbus-broker/src/bus/peer.c:381,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/peer.c:383,1
    - Dst: close
      Src: /src/dbus-broker/src/bus/peer.c:385,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 1
    argNames:
    - peer
    argTypes:
    - Peer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 354
    functionDepth: 4
    functionLinenumber: 354
    functionLinenumberEnd: 388
    functionName: peer_free
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 1
    functionsReached:
    - c_close
    - c_rbnode_unlink
    - connection_deinit
    - policy_snapshot_free
    - match_owner_deinit
    - match_registry_deinit
    - close
    - c_list_unlink
    - name_owner_deinit
    - reply_owner_deinit
    - reply_registry_deinit
    - free
    - user_unref
    - c_assert
    - user_charge_deinit
    linkageType: ''
    returnType: Peer
    signature: Peer *peer_free(Peer *peer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:391,1
    - Dst: connection_open
      Src: /src/dbus-broker/src/bus/peer.c:391,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - peer
    argTypes:
    - Peer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 390
    functionDepth: 3
    functionLinenumber: 390
    functionLinenumberEnd: 392
    functionName: peer_spawn
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 1
    functionsReached:
    - connection_open
    - error_fold
    linkageType: ''
    returnType: int
    signature: int peer_spawn(Peer *peer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/peer.c:395,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/peer.c:396,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - peer
    argTypes:
    - Peer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 394
    functionDepth: 0
    functionLinenumber: 394
    functionLinenumberEnd: 400
    functionName: peer_register
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached:
    - c_assert
    linkageType: ''
    returnType: void
    signature: void peer_register(Peer *peer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/peer.c:403,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/peer.c:404,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - peer
    argTypes:
    - Peer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 402
    functionDepth: 0
    functionLinenumber: 402
    functionLinenumberEnd: 408
    functionName: peer_unregister
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached:
    - c_assert
    linkageType: ''
    returnType: void
    signature: void peer_unregister(Peer *peer)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - peer
    argTypes:
    - Peer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 410
    functionDepth: 0
    functionLinenumber: 410
    functionLinenumberEnd: 418
    functionName: peer_is_privileged
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool peer_is_privileged(Peer *peer)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/peer.c:423,1
    - Dst: policy_snapshot_check_own
      Src: /src/dbus-broker/src/bus/peer.c:429,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:436,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/peer.c:439,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:454,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 23
    argCount: 4
    argNames:
    - peer
    - name
    - flags
    - change
    argTypes:
    - Peer*
    - char*
    - uint32_t
    - NameChange*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 420
    functionDepth: 2
    functionLinenumber: 420
    functionLinenumberEnd: 457
    functionName: peer_request_name
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached:
    - strcmp
    - name_registry_request_name
    - policy_snapshot_check_own
    - error_fold
    linkageType: ''
    returnType: int
    signature: int peer_request_name(Peer *peer, const char *name, uint32_t flags,
      NameChange *change)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/peer.c:462,1
    - Dst: name_registry_release_name
      Src: /src/dbus-broker/src/bus/peer.c:468,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:474,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - peer
    - name
    - change
    argTypes:
    - Peer*
    - char*
    - NameChange*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 459
    functionDepth: 1
    functionLinenumber: 459
    functionLinenumberEnd: 477
    functionName: peer_release_name
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached:
    - strcmp
    - name_registry_release_name
    - error_fold
    linkageType: ''
    returnType: int
    signature: int peer_release_name(Peer *peer, const char *name, NameChange *change)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name_ownership_release
      Src: /src/dbus-broker/src/bus/peer.c:480,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - peer
    - ownership
    - change
    argTypes:
    - Peer*
    - NameOwnership*
    - NameChange*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 481
      start: 479
    functionDepth: 1
    functionLinenumber: 479
    functionLinenumberEnd: 481
    functionName: peer_release_name_ownership
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached:
    - name_ownership_release
    linkageType: ''
    returnType: void
    signature: void peer_release_name_ownership(Peer *peer, NameOwnership *ownership,
      NameChange *change)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: match_rule_link
      Src: /src/dbus-broker/src/bus/peer.c:493,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:495,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/peer.c:496,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/peer.c:498,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/peer.c:500,1
    - Dst: address_from_string
      Src: /src/dbus-broker/src/bus/peer.c:505,1
    - Dst: peer_registry_find_peer
      Src: /src/dbus-broker/src/bus/peer.c:508,1
    - Dst: match_rule_link
      Src: /src/dbus-broker/src/bus/peer.c:510,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:512,1
    - Dst: match_rule_link
      Src: /src/dbus-broker/src/bus/peer.c:524,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:526,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/peer.c:542,1
    - Dst: name_registry_ref_name
      Src: /src/dbus-broker/src/bus/peer.c:544,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:546,1
    - Dst: match_rule_link
      Src: /src/dbus-broker/src/bus/peer.c:548,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:550,1
    - Dst: name_ref
      Src: /src/dbus-broker/src/bus/peer.c:551,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/peer.c:555,1
    - Dst: match_rule_link
      Src: /src/dbus-broker/src/bus/peer.c:563,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:565,1
    - Dst: address_from_string
      Src: /src/dbus-broker/src/bus/peer.c:568,1
    - Dst: peer_registry_find_peer
      Src: /src/dbus-broker/src/bus/peer.c:571,1
    - Dst: match_rule_link
      Src: /src/dbus-broker/src/bus/peer.c:573,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:575,1
    - Dst: match_rule_link
      Src: /src/dbus-broker/src/bus/peer.c:582,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:584,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/peer.c:596,1
    - Dst: name_registry_ref_name
      Src: /src/dbus-broker/src/bus/peer.c:598,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:600,1
    - Dst: match_rule_link
      Src: /src/dbus-broker/src/bus/peer.c:602,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:604,1
    - Dst: name_ref
      Src: /src/dbus-broker/src/bus/peer.c:605,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/peer.c:609,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 82
    argCount: 3
    argNames:
    - peer
    - rule
    - monitor
    argTypes:
    - Peer*
    - MatchRule*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 483
    functionDepth: 3
    functionLinenumber: 483
    functionLinenumberEnd: 614
    functionName: peer_link_match
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached:
    - address_from_string
    - name_ref
    - error_origin
    - name_registry_ref_name
    - _c_cleanup_
    - peer_registry_find_peer
    - match_rule_link
    - strcmp
    - error_fold
    linkageType: ''
    returnType: int
    signature: int peer_link_match(Peer *peer, MatchRule *rule, bool monitor)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/peer.c:617,1
    - Dst: match_owner_ref_rule
      Src: /src/dbus-broker/src/bus/peer.c:620,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:627,1
    - Dst: peer_link_match
      Src: /src/dbus-broker/src/bus/peer.c:630,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/peer.c:632,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - peer
    - rule_string
    argTypes:
    - Peer*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 616
    functionDepth: 4
    functionLinenumber: 616
    functionLinenumberEnd: 637
    functionName: peer_add_match
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached:
    - match_owner_ref_rule
    - peer_link_match
    - _c_cleanup_
    - error_trace
    - error_fold
    linkageType: ''
    returnType: int
    signature: int peer_add_match(Peer *peer, const char *rule_string)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/peer.c:647,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/peer.c:648,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/peer.c:649,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/peer.c:651,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/peer.c:653,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 11
    argCount: 1
    argNames:
    - rule
    argTypes:
    - MatchRule*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 639
    functionDepth: 0
    functionLinenumber: 639
    functionLinenumberEnd: 657
    functionName: peer_match_rule_to_name
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached:
    - strcmp
    - c_container_of
    linkageType: ''
    returnType: Name
    signature: Name *peer_match_rule_to_name(MatchRule *rule)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/peer.c:660,1
    - Dst: match_owner_find_rule
      Src: /src/dbus-broker/src/bus/peer.c:664,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:668,1
    - Dst: peer_match_rule_to_name
      Src: /src/dbus-broker/src/bus/peer.c:676,1
    - Dst: match_rule_user_unref
      Src: /src/dbus-broker/src/bus/peer.c:678,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - peer
    - rule_string
    argTypes:
    - Peer*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 659
    functionDepth: 1
    functionLinenumber: 659
    functionLinenumberEnd: 681
    functionName: peer_remove_match
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached:
    - peer_match_rule_to_name
    - match_owner_find_rule
    - _c_cleanup_
    - match_rule_user_unref
    - error_fold
    linkageType: ''
    returnType: int
    signature: int peer_remove_match(Peer *peer, const char *rule_string)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/peer.c:688,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/peer.c:689,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/peer.c:690,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/bus/peer.c:690,1
    - Dst: match_owner_move
      Src: /src/dbus-broker/src/bus/peer.c:693,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/peer.c:695,1
    - Dst: peer_link_match
      Src: /src/dbus-broker/src/bus/peer.c:708,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/peer.c:710,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - peer
    - owned_matches
    argTypes:
    - Peer*
    - MatchOwner*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 683
    functionDepth: 4
    functionLinenumber: 683
    functionLinenumberEnd: 722
    functionName: peer_become_monitor
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached:
    - c_rbtree_is_empty
    - match_owner_move
    - peer_link_match
    - c_rbtree_for_each_entry
    - error_trace
    - c_assert
    linkageType: ''
    returnType: int
    signature: int peer_become_monitor(Peer *peer, MatchOwner *owned_matches)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/peer.c:725,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/peer.c:726,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/peer.c:727,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/bus/peer.c:727,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - peer
    argTypes:
    - Peer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 724
    functionDepth: 0
    functionLinenumber: 724
    functionLinenumberEnd: 731
    functionName: peer_stop_monitor
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached:
    - c_assert
    - c_rbtree_is_empty
    linkageType: ''
    returnType: void
    signature: void peer_stop_monitor(Peer *peer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/peer.c:737,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/peer.c:738,1
    - Dst: peer_match_rule_to_name
      Src: /src/dbus-broker/src/bus/peer.c:743,1
    - Dst: match_rule_user_unref
      Src: /src/dbus-broker/src/bus/peer.c:745,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - peer
    argTypes:
    - Peer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 747
      start: 733
    functionDepth: 1
    functionLinenumber: 733
    functionLinenumberEnd: 747
    functionName: peer_flush_matches
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached:
    - _c_cleanup_
    - c_container_of
    - match_rule_user_unref
    - peer_match_rule_to_name
    linkageType: ''
    returnType: void
    signature: void peer_flush_matches(Peer *peer)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - err
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 749
    functionDepth: 0
    functionLinenumber: 749
    functionLinenumberEnd: 758
    functionName: peer_map_denied_error
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int peer_map_denied_error(int err)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/peer.c:761,1
    - Dst: NAME_SET_INIT_FROM_OWNER
      Src: /src/dbus-broker/src/bus/peer.c:762,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/peer.c:766,1
    - Dst: reply_slot_new
      Src: /src/dbus-broker/src/bus/peer.c:769,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:776,1
    - Dst: policy_snapshot_check_receive
      Src: /src/dbus-broker/src/bus/peer.c:779,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/bus/peer.c:793,1
    - Dst: bus_log_append_policy_receive
      Src: /src/dbus-broker/src/bus/peer.c:794,1
    - Dst: peer_map_denied_error
      Src: /src/dbus-broker/src/bus/peer.c:795,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/peer.c:797,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:803,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:808,1
    - Dst: policy_snapshot_check_send
      Src: /src/dbus-broker/src/bus/peer.c:811,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/bus/peer.c:825,1
    - Dst: bus_log_append_policy_send
      Src: /src/dbus-broker/src/bus/peer.c:826,1
    - Dst: peer_map_denied_error
      Src: /src/dbus-broker/src/bus/peer.c:827,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/peer.c:830,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:836,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:841,1
    - Dst: connection_queue
      Src: /src/dbus-broker/src/bus/peer.c:844,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:851,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 46
    argCount: 7
    argNames:
    - sender_policy
    - sender_names
    - sender_replies
    - sender_user
    - sender_id
    - receiver
    - message
    argTypes:
    - PolicySnapshot*
    - NameSet*
    - ReplyOwner*
    - User*
    - uint64_t
    - Peer*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 856
      start: 760
    functionDepth: 6
    functionLinenumber: 760
    functionLinenumberEnd: 856
    functionName: peer_queue_unicast
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached:
    - log_commitf
    - message_read_serial
    - reply_slot_new
    - log_append_here
    - bus_log_append_policy_receive
    - policy_snapshot_check_send
    - connection_queue
    - _c_cleanup_
    - policy_snapshot_check_receive
    - NAME_SET_INIT_FROM_OWNER
    - bus_log_append_policy_send
    - peer_map_denied_error
    - error_fold
    linkageType: ''
    returnType: int
    signature: int peer_queue_unicast(PolicySnapshot *sender_policy, NameSet *sender_names,
      ReplyOwner *sender_replies, User *sender_user, uint64_t sender_id, Peer *receiver,
      Message *message)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/peer.c:859,1
    - Dst: address_from_string
      Src: /src/dbus-broker/src/bus/peer.c:864,1
    - Dst: reply_slot_get_by_id
      Src: /src/dbus-broker/src/bus/peer.c:868,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/peer.c:872,1
    - Dst: connection_queue
      Src: /src/dbus-broker/src/bus/peer.c:874,1
    - Dst: NAME_SET_INIT_FROM_OWNER
      Src: /src/dbus-broker/src/bus/peer.c:877,1
    - Dst: NAME_SET_INIT_FROM_OWNER
      Src: /src/dbus-broker/src/bus/peer.c:878,1
    - Dst: connection_shutdown
      Src: /src/dbus-broker/src/bus/peer.c:880,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/bus/peer.c:882,1
    - Dst: bus_log_append_transaction
      Src: /src/dbus-broker/src/bus/peer.c:883,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/peer.c:886,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/peer.c:889,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:893,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/peer.c:895,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 4
    argNames:
    - sender
    - destination
    - reply_serial
    - message
    argTypes:
    - Peer*
    - char*
    - uint32_t
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 900
      start: 858
    functionDepth: 4
    functionLinenumber: 858
    functionLinenumberEnd: 900
    functionName: peer_queue_reply
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached:
    - address_from_string
    - bus_log_append_transaction
    - log_commitf
    - log_append_here
    - connection_queue
    - _c_cleanup_
    - reply_slot_get_by_id
    - c_container_of
    - NAME_SET_INIT_FROM_OWNER
    - connection_shutdown
    - error_fold
    linkageType: ''
    returnType: int
    signature: int peer_queue_reply(Peer *sender, const char *destination, uint32_t
      reply_serial, Message *message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - registry
    argTypes:
    - PeerRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 904
      start: 902
    functionDepth: 0
    functionLinenumber: 902
    functionLinenumberEnd: 904
    functionName: peer_registry_init
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void peer_registry_init(PeerRegistry *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/peer.c:907,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/bus/peer.c:907,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - registry
    argTypes:
    - PeerRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 906
    functionDepth: 0
    functionLinenumber: 906
    functionLinenumberEnd: 909
    functionName: peer_registry_deinit
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 1
    functionsReached:
    - c_assert
    - c_rbtree_is_empty
    linkageType: ''
    returnType: void
    signature: void peer_registry_deinit(PeerRegistry *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_for_each_entry_safe_postorder_unlink
      Src: /src/dbus-broker/src/bus/peer.c:915,1
    - Dst: driver_goodbye
      Src: /src/dbus-broker/src/bus/peer.c:916,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/peer.c:917,1
    - Dst: peer_free
      Src: /src/dbus-broker/src/bus/peer.c:918,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - registry
    argTypes:
    - PeerRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 920
      start: 911
    functionDepth: 5
    functionLinenumber: 911
    functionLinenumberEnd: 920
    functionName: peer_registry_flush
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 1
    functionsReached:
    - driver_goodbye
    - c_rbtree_for_each_entry_safe_postorder_unlink
    - peer_free
    - c_assert
    linkageType: ''
    returnType: void
    signature: void peer_registry_flush(PeerRegistry *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/bus/peer.c:925,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - registry
    - id
    argTypes:
    - PeerRegistry*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 928
      start: 922
    functionDepth: 0
    functionLinenumber: 922
    functionLinenumberEnd: 928
    functionName: peer_registry_find_peer
    functionSourceFile: /src/dbus-broker/src/bus/peer.c
    functionUses: 2
    functionsReached:
    - c_rbtree_find_entry
    linkageType: ''
    returnType: Peer
    signature: Peer *peer_registry_find_peer(PeerRegistry *registry, uint64_t id)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - change
    argTypes:
    - NameChange*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 26
    functionName: name_change_init
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void name_change_init(NameChange *change)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name_unref
      Src: /src/dbus-broker/src/bus/name.c:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - change
    argTypes:
    - NameChange*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 35
    functionDepth: 3
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionName: name_change_deinit
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 0
    functionsReached:
    - name_unref
    linkageType: ''
    returnType: void
    signature: void name_change_deinit(NameChange *change)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/name.c:41,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - tree
    - k
    - rb
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 49
    functionName: name_ownership_compare
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 0
    functionsReached:
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int name_ownership_compare(CRBTree *tree, void *k, CRBNode *rb)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/name.c:52,1
    - Dst: c_rbnode_is_linked
      Src: /src/dbus-broker/src/bus/name.c:52,1
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/bus/name.c:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ownership
    - parent
    - slot
    argTypes:
    - NameOwnership*
    - CRBNode*
    - CRBNode**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 55
    functionName: name_ownership_link
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 0
    functionsReached:
    - c_assert
    - c_rbtree_add
    - c_rbnode_is_linked
    linkageType: ''
    returnType: void
    signature: void name_ownership_link(NameOwnership *ownership, CRBNode *parent,
      CRBNode **slot)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/name.c:61,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/bus/name.c:61,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/bus/name.c:63,1
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/bus/name.c:64,1
    - Dst: name_unref
      Src: /src/dbus-broker/src/bus/name.c:65,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/name.c:66,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ownership
    argTypes:
    - NameOwnership*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 57
    functionDepth: 4
    functionLinenumber: 57
    functionLinenumberEnd: 69
    functionName: name_ownership_free
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 0
    functionsReached:
    - c_rbnode_unlink
    - c_list_is_linked
    - free
    - name_unref
    - c_assert
    - user_charge_deinit
    linkageType: ''
    returnType: NameOwnership
    signature: NameOwnership *name_ownership_free(NameOwnership *ownership)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/name.c:74,1
    - Dst: calloc
      Src: /src/dbus-broker/src/bus/name.c:77,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/name.c:79,1
    - Dst: NAME_OWNERSHIP_NULL
      Src: /src/dbus-broker/src/bus/name.c:81,1
    - Dst: name_ref
      Src: /src/dbus-broker/src/bus/name.c:83,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/bus/name.c:85,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/name.c:87,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - ownershipp
    - owner
    - user
    - name
    argTypes:
    - NameOwnership**
    - NameOwner*
    - User*
    - Name*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 73
    functionDepth: 5
    functionLinenumber: 73
    functionLinenumberEnd: 92
    functionName: name_ownership_new
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 0
    functionsReached:
    - NAME_OWNERSHIP_NULL
    - calloc
    - name_ref
    - error_origin
    - _c_cleanup_
    - user_charge
    - error_fold
    linkageType: ''
    returnType: int
    signature: int name_ownership_new(NameOwnership **ownershipp, NameOwner *owner,
      User *user, Name *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name_primary
      Src: /src/dbus-broker/src/bus/name.c:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ownership
    argTypes:
    - NameOwnership*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: name_ownership_is_primary
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 2
    functionsReached:
    - name_primary
    linkageType: ''
    returnType: bool
    signature: bool name_ownership_is_primary(NameOwnership *ownership)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/name.c:121,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/name.c:122,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/name.c:123,1
    - Dst: name_primary
      Src: /src/dbus-broker/src/bus/name.c:125,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/bus/name.c:126,1
    - Dst: name_primary
      Src: /src/dbus-broker/src/bus/name.c:132,1
    - Dst: name_ref
      Src: /src/dbus-broker/src/bus/name.c:134,1
    - Dst: util_peak_update
      Src: /src/dbus-broker/src/bus/name.c:142,1
    - Dst: name_ownership_free
      Src: /src/dbus-broker/src/bus/name.c:146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 2
    argNames:
    - ownership
    - change
    argTypes:
    - NameOwnership*
    - NameChange*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 117
    functionDepth: 5
    functionLinenumber: 117
    functionLinenumberEnd: 147
    functionName: name_ownership_release
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 1
    functionsReached:
    - name_primary
    - name_ref
    - c_list_unlink
    - name_ownership_free
    - c_assert
    - util_peak_update
    linkageType: ''
    returnType: void
    signature: void name_ownership_release(NameOwnership *ownership, NameChange *change)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/name.c:154,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/name.c:155,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/name.c:156,1
    - Dst: name_primary
      Src: /src/dbus-broker/src/bus/name.c:158,1
    - Dst: name_ref
      Src: /src/dbus-broker/src/bus/name.c:163,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/name.c:168,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/bus/name.c:168,1
    - Dst: c_list_link_front
      Src: /src/dbus-broker/src/bus/name.c:170,1
    - Dst: util_peak_update
      Src: /src/dbus-broker/src/bus/name.c:174,1
    - Dst: util_peak_update
      Src: /src/dbus-broker/src/bus/name.c:175,1
    - Dst: name_ref
      Src: /src/dbus-broker/src/bus/name.c:184,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/bus/name.c:188,1
    - Dst: c_list_link_front
      Src: /src/dbus-broker/src/bus/name.c:189,1
    - Dst: util_peak_update
      Src: /src/dbus-broker/src/bus/name.c:194,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/bus/name.c:198,1
    - Dst: name_ownership_free
      Src: /src/dbus-broker/src/bus/name.c:199,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/bus/name.c:205,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/bus/name.c:206,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/bus/name.c:210,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 3
    argNames:
    - ownership
    - flags
    - change
    argTypes:
    - NameOwnership*
    - uint32_t
    - NameChange*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 149
    functionDepth: 5
    functionLinenumber: 149
    functionLinenumberEnd: 215
    functionName: name_ownership_update
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 0
    functionsReached:
    - c_list_is_linked
    - c_list_link_tail
    - name_primary
    - name_ref
    - c_list_unlink
    - name_ownership_free
    - c_assert
    - c_list_link_front
    - util_peak_update
    linkageType: ''
    returnType: int
    signature: int name_ownership_update(NameOwnership *ownership, uint32_t flags,
      NameChange *change)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/name.c:218,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/name.c:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - tree
    - k
    - rb
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 221
    functionName: name_compare
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 0
    functionsReached:
    - strcmp
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int name_compare(CRBTree *tree, void *k, CRBNode *rb)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/name.c:224,1
    - Dst: c_rbnode_is_linked
      Src: /src/dbus-broker/src/bus/name.c:224,1
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/bus/name.c:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - name
    - parent
    - slot
    argTypes:
    - Name*
    - CRBNode*
    - CRBNode**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 227
    functionName: name_link
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 0
    functionsReached:
    - c_assert
    - c_rbtree_add
    - c_rbnode_is_linked
    linkageType: ''
    returnType: void
    signature: void name_link(Name *name, CRBNode *parent, CRBNode **slot)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/name.c:230,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/name.c:233,1
    - Dst: malloc
      Src: /src/dbus-broker/src/bus/name.c:234,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/name.c:236,1
    - Dst: NAME_INIT
      Src: /src/dbus-broker/src/bus/name.c:238,1
    - Dst: c_memcpy
      Src: /src/dbus-broker/src/bus/name.c:240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - namep
    - registry
    - name_str
    argTypes:
    - Name**
    - NameRegistry*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 229
    functionDepth: 1
    functionLinenumber: 229
    functionLinenumberEnd: 245
    functionName: name_new
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 3
    functionsReached:
    - c_memcpy
    - strlen
    - error_origin
    - _c_cleanup_
    - NAME_INIT
    - malloc
    linkageType: ''
    returnType: int
    signature: int name_new(Name **namep, NameRegistry *registry, const char *name_str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/name.c:248,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/name.c:250,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/bus/name.c:250,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/name.c:251,1
    - Dst: match_registry_deinit
      Src: /src/dbus-broker/src/bus/name.c:253,1
    - Dst: match_registry_deinit
      Src: /src/dbus-broker/src/bus/name.c:254,1
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/bus/name.c:255,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/name.c:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - n_refs
    - userdata
    argTypes:
    - unsigned long*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 247
    functionDepth: 1
    functionLinenumber: 247
    functionLinenumberEnd: 257
    functionName: name_free
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 4
    functionsReached:
    - c_rbnode_unlink
    - match_registry_deinit
    - c_container_of
    - free
    - c_assert
    - c_list_is_empty
    linkageType: ''
    returnType: void
    signature: void name_free(_Atomic unsigned long *n_refs, void *userdata)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - owner
    argTypes:
    - NameOwner*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 267
    functionName: name_owner_init
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void name_owner_init(NameOwner *owner)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/name.c:277,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/bus/name.c:277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - owner
    argTypes:
    - NameOwner*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 278
    functionName: name_owner_deinit
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 1
    functionsReached:
    - c_assert
    - c_rbtree_is_empty
    linkageType: ''
    returnType: void
    signature: void name_owner_deinit(NameOwner *owner)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/name.c:291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - owner
    - n_objectsp
    argTypes:
    - NameOwner*
    - unsigned int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 295
    functionName: name_owner_get_stats
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 0
    functionsReached:
    - c_rbtree_for_each_entry
    linkageType: ''
    returnType: void
    signature: void name_owner_get_stats(NameOwner *owner, unsigned int *n_objectsp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - registry
    argTypes:
    - NameRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 305
    functionName: name_registry_init
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void name_registry_init(NameRegistry *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/name.c:315,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/bus/name.c:315,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - registry
    argTypes:
    - NameRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 314
    functionDepth: 0
    functionLinenumber: 314
    functionLinenumberEnd: 316
    functionName: name_registry_deinit
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 1
    functionsReached:
    - c_assert
    - c_rbtree_is_empty
    linkageType: ''
    returnType: void
    signature: void name_registry_deinit(NameRegistry *registry)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/name.c:341,1
    - Dst: activation_get_stats_for
      Src: /src/dbus-broker/src/bus/name.c:343,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - registry
    - owner_id
    - n_bytesp
    - n_fdsp
    argTypes:
    - NameRegistry*
    - uint64_t
    - unsigned int*
    - unsigned int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 331
    functionDepth: 1
    functionLinenumber: 331
    functionLinenumberEnd: 349
    functionName: name_registry_get_activation_stats_for
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 0
    functionsReached:
    - activation_get_stats_for
    - c_rbtree_for_each_entry
    linkageType: ''
    returnType: void
    signature: "void name_registry_get_activation_stats_for(NameRegistry *registry,\n
      \                                           uint64_t owner_id,\n                                            unsigned
      int *n_bytesp,\n                                            unsigned int *n_fdsp)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/bus/name.c:368,1
    - Dst: name_ref
      Src: /src/dbus-broker/src/bus/name.c:370,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/name.c:370,1
    - Dst: name_new
      Src: /src/dbus-broker/src/bus/name.c:372,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/name.c:374,1
    - Dst: name_link
      Src: /src/dbus-broker/src/bus/name.c:376,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - registry
    - namep
    - name_str
    argTypes:
    - NameRegistry*
    - Name**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 364
    functionDepth: 3
    functionLinenumber: 364
    functionLinenumberEnd: 380
    functionName: name_registry_ref_name
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 2
    functionsReached:
    - c_rbtree_find_slot
    - name_ref
    - name_link
    - name_new
    - c_container_of
    - error_trace
    linkageType: ''
    returnType: int
    signature: int name_registry_ref_name(NameRegistry *registry, Name **namep, const
      char *name_str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/bus/name.c:392,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - registry
    - name_str
    argTypes:
    - NameRegistry*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 391
    functionDepth: 0
    functionLinenumber: 391
    functionLinenumberEnd: 393
    functionName: name_registry_find_name
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 1
    functionsReached:
    - c_rbtree_find_entry
    linkageType: ''
    returnType: Name
    signature: Name *name_registry_find_name(NameRegistry *registry, const char *name_str)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/name.c:418,1
    - Dst: name_registry_ref_name
      Src: /src/dbus-broker/src/bus/name.c:423,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/name.c:425,1
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/bus/name.c:427,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/name.c:432,1
    - Dst: name_ownership_new
      Src: /src/dbus-broker/src/bus/name.c:434,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/name.c:436,1
    - Dst: name_ownership_link
      Src: /src/dbus-broker/src/bus/name.c:438,1
    - Dst: name_ownership_update
      Src: /src/dbus-broker/src/bus/name.c:441,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/bus/name.c:442,1
    - Dst: name_ownership_free
      Src: /src/dbus-broker/src/bus/name.c:443,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/name.c:444,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 6
    argNames:
    - registry
    - owner
    - user
    - name_str
    - flags
    - change
    argTypes:
    - NameRegistry*
    - NameOwner*
    - User*
    - char*
    - uint32_t
    - NameChange*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 412
    functionDepth: 6
    functionLinenumber: 412
    functionLinenumberEnd: 445
    functionName: name_registry_request_name
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 1
    functionsReached:
    - c_list_is_linked
    - c_rbtree_find_slot
    - name_registry_ref_name
    - name_ownership_new
    - name_ownership_update
    - _c_cleanup_
    - name_ownership_free
    - error_trace
    - c_container_of
    - name_ownership_link
    linkageType: ''
    returnType: int
    signature: "int name_registry_request_name(NameRegistry *registry,\n                               NameOwner
      *owner,\n                               User *user,\n                               const
      char *name_str,\n                               uint32_t flags,\n                               NameChange
      *change)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: name_registry_find_name
      Src: /src/dbus-broker/src/bus/name.c:468,1
    - Dst: name_primary
      Src: /src/dbus-broker/src/bus/name.c:469,1
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/bus/name.c:472,1
    - Dst: name_ownership_release
      Src: /src/dbus-broker/src/bus/name.c:480,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 4
    argNames:
    - registry
    - owner
    - name_str
    - change
    argTypes:
    - NameRegistry*
    - NameOwner*
    - char*
    - NameChange*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 461
    functionDepth: 6
    functionLinenumber: 461
    functionLinenumberEnd: 482
    functionName: name_registry_release_name
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 1
    functionsReached:
    - name_registry_find_name
    - name_primary
    - name_ownership_release
    - c_rbtree_find_entry
    linkageType: ''
    returnType: int
    signature: "int name_registry_release_name(NameRegistry *registry,\n                               NameOwner
      *owner,\n                               const char *name_str,\n                               NameChange
      *change)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/name.c:500,1
    - Dst: malloc
      Src: /src/dbus-broker/src/bus/name.c:503,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/name.c:505,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/name.c:509,1
    - Dst: name_ref
      Src: /src/dbus-broker/src/bus/name.c:510,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/name.c:512,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - snapshotp
    - owner
    argTypes:
    - NameSnapshot**
    - NameOwner*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 495
    functionDepth: 3
    functionLinenumber: 495
    functionLinenumberEnd: 516
    functionName: name_snapshot_new
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 0
    functionsReached:
    - name_ref
    - error_origin
    - c_rbtree_for_each_entry
    - c_assert
    - malloc
    linkageType: ''
    returnType: int
    signature: int name_snapshot_new(NameSnapshot **snapshotp, NameOwner *owner)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: name_unref
      Src: /src/dbus-broker/src/bus/name.c:531,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/name.c:533,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - snapshot
    argTypes:
    - NameSnapshot*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 526
    functionDepth: 3
    functionLinenumber: 526
    functionLinenumberEnd: 536
    functionName: name_snapshot_free
    functionSourceFile: /src/dbus-broker/src/bus/name.c
    functionUses: 0
    functionsReached:
    - free
    - name_unref
    linkageType: ''
    returnType: NameSnapshot
    signature: NameSnapshot *name_snapshot_free(NameSnapshot *snapshot)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/match.c:18,1
    - Dst: strncmp
      Src: /src/dbus-broker/src/bus/match.c:21,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - key1
    - key2
    - n_key2
    argTypes:
    - char*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 22
    functionName: match_key_equal
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - strncmp
    - strlen
    linkageType: ''
    returnType: bool
    signature: bool match_key_equal(const char *key1, const char *key2, size_t n_key2)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: match_key_equal
      Src: /src/dbus-broker/src/bus/match.c:25,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/match.c:29,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/match.c:31,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/match.c:33,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/match.c:35,1
    - Dst: match_key_equal
      Src: /src/dbus-broker/src/bus/match.c:39,1
    - Dst: dbus_validate_name
      Src: /src/dbus-broker/src/bus/match.c:44,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/match.c:44,1
    - Dst: address_from_string
      Src: /src/dbus-broker/src/bus/match.c:48,1
    - Dst: match_key_equal
      Src: /src/dbus-broker/src/bus/match.c:57,1
    - Dst: dbus_validate_name
      Src: /src/dbus-broker/src/bus/match.c:60,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/match.c:60,1
    - Dst: match_key_equal
      Src: /src/dbus-broker/src/bus/match.c:63,1
    - Dst: dbus_validate_interface
      Src: /src/dbus-broker/src/bus/match.c:66,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/match.c:66,1
    - Dst: match_key_equal
      Src: /src/dbus-broker/src/bus/match.c:69,1
    - Dst: dbus_validate_member
      Src: /src/dbus-broker/src/bus/match.c:72,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/match.c:72,1
    - Dst: match_key_equal
      Src: /src/dbus-broker/src/bus/match.c:75,1
    - Dst: c_dvar_is_path
      Src: /src/dbus-broker/src/bus/match.c:78,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/match.c:78,1
    - Dst: match_key_equal
      Src: /src/dbus-broker/src/bus/match.c:81,1
    - Dst: c_dvar_is_path
      Src: /src/dbus-broker/src/bus/match.c:84,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/match.c:84,1
    - Dst: match_key_equal
      Src: /src/dbus-broker/src/bus/match.c:87,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/match.c:98,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/match.c:98,1
    - Dst: match_key_equal
      Src: /src/dbus-broker/src/bus/match.c:100,1
    - Dst: dbus_validate_namespace
      Src: /src/dbus-broker/src/bus/match.c:103,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/match.c:103,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/match.c:106,1
    - Dst: match_key_equal
      Src: /src/dbus-broker/src/bus/match.c:106,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/match.c:106,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/match.c:109,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/match.c:110,1
    - Dst: match_key_equal
      Src: /src/dbus-broker/src/bus/match.c:127,1
    - Dst: match_key_equal
      Src: /src/dbus-broker/src/bus/match.c:131,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 102
    argCount: 5
    argNames:
    - keys
    - key
    - n_key
    - value
    - allow_eavesdrop
    argTypes:
    - MatchKeys*
    - char*
    - size_t
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 24
    functionDepth: 2
    functionLinenumber: 24
    functionLinenumberEnd: 142
    functionName: match_keys_assign
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - address_from_string
    - strlen
    - c_dvar_is_path
    - dbus_validate_interface
    - dbus_validate_namespace
    - match_key_equal
    - dbus_validate_name
    - strcmp
    - dbus_validate_member
    linkageType: ''
    returnType: int
    signature: int match_keys_assign(MatchKeys *keys, const char *key, size_t n_key,
      const char *value, bool allow_eavesdrop)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 2
    argNames:
    - match
    - p
    argTypes:
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 185
    functionName: match_copy_value
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int match_copy_value(const char **match, char **p)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strspn
      Src: /src/dbus-broker/src/bus/match.c:192,1
    - Dst: strcspn
      Src: /src/dbus-broker/src/bus/match.c:197,1
    - Dst: strspn
      Src: /src/dbus-broker/src/bus/match.c:204,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - match
    - keyp
    - n_keyp
    argTypes:
    - char**
    - char**
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 215
    functionName: match_parse_key
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - strspn
    - strcspn
    linkageType: ''
    returnType: int
    signature: int match_parse_key(const char **match, const char **keyp, size_t *n_keyp)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: match_parse_key
      Src: /src/dbus-broker/src/bus/match.c:234,1
    - Dst: match_copy_value
      Src: /src/dbus-broker/src/bus/match.c:239,1
    - Dst: match_keys_assign
      Src: /src/dbus-broker/src/bus/match.c:243,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:250,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/match.c:254,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - keys
    - string
    - allow_eavesdrop
    argTypes:
    - MatchKeys*
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 217
    functionDepth: 3
    functionLinenumber: 217
    functionLinenumberEnd: 255
    functionName: match_keys_parse
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - match_parse_key
    - error_trace
    - c_assert
    - match_copy_value
    - match_keys_assign
    linkageType: ''
    returnType: int
    signature: int match_keys_parse(MatchKeys *keys, const char *string, bool allow_eavesdrop)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - keys
    argTypes:
    - MatchKeys*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 259
    functionName: match_keys_deinit
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void match_keys_deinit(MatchKeys *keys)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/match.c:264,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:267,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:268,1
    - Dst: match_keys_parse
      Src: /src/dbus-broker/src/bus/match.c:273,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/match.c:275,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - k
    - string
    - n_string
    - allow_eavesdrop
    argTypes:
    - MatchKeys*
    - char*
    - size_t
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 263
    functionDepth: 4
    functionLinenumber: 263
    functionLinenumberEnd: 279
    functionName: match_keys_init
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_assert
    - _c_cleanup_
    - error_trace
    - match_keys_parse
    linkageType: ''
    returnType: int
    signature: int match_keys_init(MatchKeys *k, const char *string, size_t n_string,
      bool allow_eavesdrop)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/match.c:282,1
    - Dst: stpcpy
      Src: /src/dbus-broker/src/bus/match.c:296,1
    - Dst: stpcpy
      Src: /src/dbus-broker/src/bus/match.c:301,1
    - Dst: stpcpy
      Src: /src/dbus-broker/src/bus/match.c:306,1
    - Dst: stpcpy
      Src: /src/dbus-broker/src/bus/match.c:312,1
    - Dst: stpcpy
      Src: /src/dbus-broker/src/bus/match.c:320,1
    - Dst: stpcpy
      Src: /src/dbus-broker/src/bus/match.c:327,1
    - Dst: stpcpy
      Src: /src/dbus-broker/src/bus/match.c:332,1
    - Dst: stpcpy
      Src: /src/dbus-broker/src/bus/match.c:337,1
    - Dst: stpcpy
      Src: /src/dbus-broker/src/bus/match.c:342,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:347,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 54
    argCount: 2
    argNames:
    - k
    - old
    argTypes:
    - MatchKeys*
    - MatchKeys*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 281
    functionDepth: 0
    functionLinenumber: 281
    functionLinenumberEnd: 354
    functionName: match_keys_clone
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - stpcpy
    - _c_cleanup_
    - c_assert
    linkageType: ''
    returnType: int
    signature: int match_keys_clone(MatchKeys *k, MatchKeys *old)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: match_keys_deinit
      Src: /src/dbus-broker/src/bus/match.c:358,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/match.c:359,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - keys
    argTypes:
    - MatchKeys*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 356
    functionDepth: 1
    functionLinenumber: 356
    functionLinenumberEnd: 362
    functionName: match_keys_free
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - match_keys_deinit
    - free
    linkageType: ''
    returnType: MatchKeys
    signature: MatchKeys *match_keys_free(MatchKeys *keys)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/match.c:367,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/match.c:371,1
    - Dst: calloc
      Src: /src/dbus-broker/src/bus/match.c:375,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/match.c:377,1
    - Dst: match_keys_init
      Src: /src/dbus-broker/src/bus/match.c:379,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/match.c:381,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - keysp
    - string
    argTypes:
    - MatchKeys**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 366
    functionDepth: 5
    functionLinenumber: 366
    functionLinenumberEnd: 386
    functionName: match_keys_new
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - strlen
    - calloc
    - match_keys_init
    - error_origin
    - _c_cleanup_
    - error_trace
    linkageType: ''
    returnType: int
    signature: int match_keys_new(MatchKeys **keysp, const char *string)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: string_prefix
      Src: /src/dbus-broker/src/bus/match.c:397,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 16
    argCount: 4
    argNames:
    - string
    - prefix
    - delimiter
    - delimiter_included
    argTypes:
    - char*
    - char*
    - char
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 388
    functionDepth: 1
    functionLinenumber: 388
    functionLinenumberEnd: 410
    functionName: match_string_prefix
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - string_prefix
    linkageType: ''
    returnType: bool
    signature: bool match_string_prefix(const char *string, const char *prefix, char
      delimiter, bool delimiter_included)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: match_string_prefix
      Src: /src/dbus-broker/src/bus/match.c:419,1
    - Dst: match_string_prefix
      Src: /src/dbus-broker/src/bus/match.c:422,1
    - Dst: string_equal
      Src: /src/dbus-broker/src/bus/match.c:426,1
    - Dst: match_string_prefix
      Src: /src/dbus-broker/src/bus/match.c:430,1
    - Dst: match_string_prefix
      Src: /src/dbus-broker/src/bus/match.c:431,1
    - Dst: string_equal
      Src: /src/dbus-broker/src/bus/match.c:442,1
    - Dst: string_equal
      Src: /src/dbus-broker/src/bus/match.c:445,1
    - Dst: string_equal
      Src: /src/dbus-broker/src/bus/match.c:448,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 28
    argCount: 2
    argNames:
    - keys
    - metadata
    argTypes:
    - MatchKeys*
    - MessageMetadata*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 412
    functionDepth: 2
    functionLinenumber: 412
    functionLinenumberEnd: 452
    functionName: match_keys_match_metadata
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - string_equal
    - match_string_prefix
    linkageType: ''
    returnType: bool
    signature: bool match_keys_match_metadata(MatchKeys *keys, MessageMetadata *metadata)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/match.c:455,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/match.c:458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - tree
    - k
    - rb
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 454
    functionDepth: 0
    functionLinenumber: 454
    functionLinenumberEnd: 459
    functionName: match_registry_by_path_compare
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - strcmp
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int match_registry_by_path_compare(CRBTree *tree, void *k, CRBNode
      *rb)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/match.c:468,1
    - Dst: malloc
      Src: /src/dbus-broker/src/bus/match.c:470,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/match.c:472,1
    - Dst: MATCH_REGISTRY_BY_PATH_INIT
      Src: /src/dbus-broker/src/bus/match.c:474,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/bus/match.c:475,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - registryp
    - path
    argTypes:
    - MatchRegistryByPath**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 479
      start: 461
    functionDepth: 1
    functionLinenumber: 461
    functionLinenumberEnd: 479
    functionName: match_registry_by_path_new
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - strcpy
    - strlen
    - error_origin
    - malloc
    - MATCH_REGISTRY_BY_PATH_INIT
    linkageType: ''
    returnType: int
    signature: int match_registry_by_path_new(MatchRegistryByPath **registryp, const
      char *path)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:485,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - registry
    argTypes:
    - MatchRegistryByPath*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 481
    functionDepth: 0
    functionLinenumber: 481
    functionLinenumberEnd: 490
    functionName: match_registry_by_path_ref
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_assert
    linkageType: ''
    returnType: MatchRegistryByPath
    signature: MatchRegistryByPath *match_registry_by_path_ref(MatchRegistryByPath
      *registry)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:496,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/bus/match.c:496,1
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/bus/match.c:498,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/match.c:499,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - registry
    argTypes:
    - MatchRegistryByPath*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 492
    functionDepth: 0
    functionLinenumber: 492
    functionLinenumberEnd: 502
    functionName: match_registry_by_path_unref
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_assert
    - c_rbtree_is_empty
    - c_rbnode_unlink
    - free
    linkageType: ''
    returnType: MatchRegistryByPath
    signature: MatchRegistryByPath *match_registry_by_path_unref(MatchRegistryByPath
      *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/bus/match.c:507,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - registry
    - tree
    - parent
    - slot
    argTypes:
    - MatchRegistryByPath*
    - CRBTree*
    - CRBNode*
    - CRBNode**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 506
    functionDepth: 0
    functionLinenumber: 506
    functionLinenumberEnd: 508
    functionName: match_registry_by_path_link
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_rbtree_add
    linkageType: ''
    returnType: void
    signature: void match_registry_by_path_link(MatchRegistryByPath *registry, CRBTree
      *tree, CRBNode *parent, CRBNode **slot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/match.c:511,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/match.c:514,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - tree
    - k
    - rb
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 510
    functionDepth: 0
    functionLinenumber: 510
    functionLinenumberEnd: 515
    functionName: match_registry_by_interface_compare
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - strcmp
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int match_registry_by_interface_compare(CRBTree *tree, void *k, CRBNode
      *rb)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/match.c:524,1
    - Dst: malloc
      Src: /src/dbus-broker/src/bus/match.c:526,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/match.c:528,1
    - Dst: MATCH_REGISTRY_BY_INTERFACE_INIT
      Src: /src/dbus-broker/src/bus/match.c:530,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/bus/match.c:531,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - registryp
    - interface
    argTypes:
    - MatchRegistryByInterface**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 517
    functionDepth: 1
    functionLinenumber: 517
    functionLinenumberEnd: 535
    functionName: match_registry_by_interface_new
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - strcpy
    - strlen
    - error_origin
    - MATCH_REGISTRY_BY_INTERFACE_INIT
    - malloc
    linkageType: ''
    returnType: int
    signature: int match_registry_by_interface_new(MatchRegistryByInterface **registryp,
      const char *interface)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:541,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - registry
    argTypes:
    - MatchRegistryByInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 537
    functionDepth: 0
    functionLinenumber: 537
    functionLinenumberEnd: 546
    functionName: match_registry_by_interface_ref
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_assert
    linkageType: ''
    returnType: MatchRegistryByInterface
    signature: MatchRegistryByInterface *match_registry_by_interface_ref(MatchRegistryByInterface
      *registry)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:552,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/bus/match.c:552,1
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/bus/match.c:554,1
    - Dst: match_registry_by_path_unref
      Src: /src/dbus-broker/src/bus/match.c:555,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/match.c:556,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - registry
    argTypes:
    - MatchRegistryByInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 548
    functionDepth: 1
    functionLinenumber: 548
    functionLinenumberEnd: 559
    functionName: match_registry_by_interface_unref
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_rbnode_unlink
    - c_rbtree_is_empty
    - free
    - match_registry_by_path_unref
    - c_assert
    linkageType: ''
    returnType: MatchRegistryByInterface
    signature: MatchRegistryByInterface *match_registry_by_interface_unref(MatchRegistryByInterface
      *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/bus/match.c:564,1
    - Dst: match_registry_by_path_ref
      Src: /src/dbus-broker/src/bus/match.c:565,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - registry
    - registry_by_path
    - parent
    - slot
    argTypes:
    - MatchRegistryByInterface*
    - MatchRegistryByPath*
    - CRBNode*
    - CRBNode**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 563
    functionDepth: 1
    functionLinenumber: 563
    functionLinenumberEnd: 566
    functionName: match_registry_by_interface_link
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - match_registry_by_path_ref
    - c_rbtree_add
    linkageType: ''
    returnType: void
    signature: void match_registry_by_interface_link(MatchRegistryByInterface *registry,
      MatchRegistryByPath *registry_by_path, CRBNode *parent, CRBNode **slot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/match.c:569,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/match.c:572,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - tree
    - k
    - rb
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 568
    functionDepth: 0
    functionLinenumber: 568
    functionLinenumberEnd: 573
    functionName: match_registry_by_member_compare
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - strcmp
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int match_registry_by_member_compare(CRBTree *tree, void *k, CRBNode
      *rb)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/match.c:582,1
    - Dst: malloc
      Src: /src/dbus-broker/src/bus/match.c:584,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/match.c:586,1
    - Dst: MATCH_REGISTRY_BY_MEMBER_INIT
      Src: /src/dbus-broker/src/bus/match.c:588,1
    - Dst: strcpy
      Src: /src/dbus-broker/src/bus/match.c:589,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - registryp
    - member
    argTypes:
    - MatchRegistryByMember**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 593
      start: 575
    functionDepth: 1
    functionLinenumber: 575
    functionLinenumberEnd: 593
    functionName: match_registry_by_member_new
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - strcpy
    - strlen
    - MATCH_REGISTRY_BY_MEMBER_INIT
    - error_origin
    - malloc
    linkageType: ''
    returnType: int
    signature: int match_registry_by_member_new(MatchRegistryByMember **registryp,
      const char *member)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:599,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - registry
    argTypes:
    - MatchRegistryByMember*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 595
    functionDepth: 0
    functionLinenumber: 595
    functionLinenumberEnd: 604
    functionName: match_registry_by_member_ref
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_assert
    linkageType: ''
    returnType: MatchRegistryByMember
    signature: MatchRegistryByMember *match_registry_by_member_ref(MatchRegistryByMember
      *registry)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:610,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/bus/match.c:610,1
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/bus/match.c:612,1
    - Dst: match_registry_by_interface_unref
      Src: /src/dbus-broker/src/bus/match.c:613,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/match.c:614,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - registry
    argTypes:
    - MatchRegistryByMember*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 606
    functionDepth: 2
    functionLinenumber: 606
    functionLinenumberEnd: 617
    functionName: match_registry_by_member_unref
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_rbnode_unlink
    - c_rbtree_is_empty
    - free
    - c_assert
    - match_registry_by_interface_unref
    linkageType: ''
    returnType: MatchRegistryByMember
    signature: MatchRegistryByMember *match_registry_by_member_unref(MatchRegistryByMember
      *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/bus/match.c:622,1
    - Dst: match_registry_by_interface_ref
      Src: /src/dbus-broker/src/bus/match.c:623,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - registry
    - registry_by_interface
    - parent
    - slot
    argTypes:
    - MatchRegistryByMember*
    - MatchRegistryByInterface*
    - CRBNode*
    - CRBNode**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 621
    functionDepth: 1
    functionLinenumber: 621
    functionLinenumberEnd: 624
    functionName: match_registry_by_member_link
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - match_registry_by_interface_ref
    - c_rbtree_add
    linkageType: ''
    returnType: void
    signature: void match_registry_by_member_link(MatchRegistryByMember *registry,
      MatchRegistryByInterface *registry_by_interface, CRBNode *parent, CRBNode **slot)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: string_compare
      Src: /src/dbus-broker/src/bus/match.c:629,1
    - Dst: string_compare
      Src: /src/dbus-broker/src/bus/match.c:630,1
    - Dst: string_compare
      Src: /src/dbus-broker/src/bus/match.c:631,1
    - Dst: string_compare
      Src: /src/dbus-broker/src/bus/match.c:632,1
    - Dst: string_compare
      Src: /src/dbus-broker/src/bus/match.c:633,1
    - Dst: string_compare
      Src: /src/dbus-broker/src/bus/match.c:634,1
    - Dst: string_compare
      Src: /src/dbus-broker/src/bus/match.c:635,1
    - Dst: string_compare
      Src: /src/dbus-broker/src/bus/match.c:654,1
    - Dst: string_compare
      Src: /src/dbus-broker/src/bus/match.c:655,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 20
    argCount: 2
    argNames:
    - key1
    - key2
    argTypes:
    - MatchKeys*
    - MatchKeys*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 626
    functionDepth: 1
    functionLinenumber: 626
    functionLinenumberEnd: 660
    functionName: match_keys_compare
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - string_compare
    linkageType: ''
    returnType: int
    signature: int match_keys_compare(MatchKeys *key1, MatchKeys *key2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/match.c:663,1
    - Dst: match_keys_compare
      Src: /src/dbus-broker/src/bus/match.c:666,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - tree
    - k
    - rb
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 662
    functionDepth: 2
    functionLinenumber: 662
    functionLinenumberEnd: 667
    functionName: match_registry_by_keys_compare
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - match_keys_compare
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int match_registry_by_keys_compare(CRBTree *tree, void *k, CRBNode
      *rb)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/dbus-broker/src/bus/match.c:672,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/match.c:674,1
    - Dst: MATCH_REGISTRY_BY_KEYS_INIT
      Src: /src/dbus-broker/src/bus/match.c:676,1
    - Dst: match_keys_clone
      Src: /src/dbus-broker/src/bus/match.c:677,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - registryp
    - keys
    argTypes:
    - MatchRegistryByKeys**
    - MatchKeys*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 669
    functionDepth: 1
    functionLinenumber: 669
    functionLinenumberEnd: 681
    functionName: match_registry_by_keys_new
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - MATCH_REGISTRY_BY_KEYS_INIT
    - malloc
    - error_origin
    - match_keys_clone
    linkageType: ''
    returnType: int
    signature: int match_registry_by_keys_new(MatchRegistryByKeys **registryp, MatchKeys
      *keys)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:687,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - registry
    argTypes:
    - MatchRegistryByKeys*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 692
      start: 683
    functionDepth: 0
    functionLinenumber: 683
    functionLinenumberEnd: 692
    functionName: match_registry_by_keys_ref
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_assert
    linkageType: ''
    returnType: MatchRegistryByKeys
    signature: MatchRegistryByKeys *match_registry_by_keys_ref(MatchRegistryByKeys
      *registry)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:698,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/bus/match.c:698,1
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/bus/match.c:700,1
    - Dst: match_registry_by_member_unref
      Src: /src/dbus-broker/src/bus/match.c:701,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/match.c:702,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - registry
    argTypes:
    - MatchRegistryByKeys*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 694
    functionDepth: 3
    functionLinenumber: 694
    functionLinenumberEnd: 705
    functionName: match_registry_by_keys_unref
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_rbnode_unlink
    - match_registry_by_member_unref
    - free
    - c_assert
    - c_list_is_empty
    linkageType: ''
    returnType: MatchRegistryByKeys
    signature: MatchRegistryByKeys *match_registry_by_keys_unref(MatchRegistryByKeys
      *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/bus/match.c:710,1
    - Dst: match_registry_by_member_ref
      Src: /src/dbus-broker/src/bus/match.c:711,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - registry
    - registry_by_member
    - parent
    - slot
    argTypes:
    - MatchRegistryByKeys*
    - MatchRegistryByMember*
    - CRBNode*
    - CRBNode**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 712
      start: 709
    functionDepth: 1
    functionLinenumber: 709
    functionLinenumberEnd: 712
    functionName: match_registry_by_keys_link
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - match_registry_by_member_ref
    - c_rbtree_add
    linkageType: ''
    returnType: void
    signature: void match_registry_by_keys_link(MatchRegistryByKeys *registry, MatchRegistryByMember
      *registry_by_member, CRBNode *parent, CRBNode **slot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/match.c:715,1
    - Dst: match_keys_compare
      Src: /src/dbus-broker/src/bus/match.c:718,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - tree
    - k
    - rb
    argTypes:
    - CRBTree*
    - void*
    - CRBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 714
    functionDepth: 2
    functionLinenumber: 714
    functionLinenumberEnd: 719
    functionName: match_rule_compare
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - match_keys_compare
    - c_container_of
    linkageType: ''
    returnType: int
    signature: int match_rule_compare(CRBTree *tree, void *k, CRBNode *rb)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:725,1
    - Dst: match_keys_deinit
      Src: /src/dbus-broker/src/bus/match.c:727,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/bus/match.c:728,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/bus/match.c:729,1
    - Dst: c_rbnode_unlink
      Src: /src/dbus-broker/src/bus/match.c:730,1
    - Dst: match_rule_unlink
      Src: /src/dbus-broker/src/bus/match.c:731,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/match.c:732,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - rule
    argTypes:
    - MatchRule*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 721
    functionDepth: 4
    functionLinenumber: 721
    functionLinenumberEnd: 735
    functionName: match_rule_free
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_rbnode_unlink
    - match_keys_deinit
    - free
    - c_assert
    - user_charge_deinit
    - match_rule_unlink
    linkageType: ''
    returnType: MatchRule
    signature: MatchRule *match_rule_free(MatchRule *rule)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/match.c:740,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/match.c:744,1
    - Dst: calloc
      Src: /src/dbus-broker/src/bus/match.c:748,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/match.c:750,1
    - Dst: MATCH_RULE_NULL
      Src: /src/dbus-broker/src/bus/match.c:752,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/bus/match.c:755,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/bus/match.c:756,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/match.c:758,1
    - Dst: match_keys_init
      Src: /src/dbus-broker/src/bus/match.c:760,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/match.c:762,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 5
    argNames:
    - rulep
    - owner
    - user
    - string
    - allow_eavesdrop
    argTypes:
    - MatchRule**
    - MatchOwner*
    - User*
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 767
      start: 739
    functionDepth: 5
    functionLinenumber: 739
    functionLinenumberEnd: 767
    functionName: match_rule_new
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - strlen
    - calloc
    - match_keys_init
    - error_origin
    - _c_cleanup_
    - error_trace
    - MATCH_RULE_NULL
    - user_charge
    - error_fold
    linkageType: ''
    returnType: int
    signature: int match_rule_new(MatchRule **rulep, MatchOwner *owner, User *user,
      const char *string, bool allow_eavesdrop)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:776,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - rule
    argTypes:
    - MatchRule*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 781
      start: 772
    functionDepth: 0
    functionLinenumber: 772
    functionLinenumberEnd: 781
    functionName: match_rule_user_ref
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_assert
    linkageType: ''
    returnType: MatchRule
    signature: MatchRule *match_rule_user_ref(MatchRule *rule)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:790,1
    - Dst: match_rule_free
      Src: /src/dbus-broker/src/bus/match.c:795,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - rule
    argTypes:
    - MatchRule*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 798
      start: 786
    functionDepth: 5
    functionLinenumber: 786
    functionLinenumberEnd: 798
    functionName: match_rule_user_unref
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 2
    functionsReached:
    - c_assert
    - match_rule_free
    linkageType: ''
    returnType: MatchRule
    signature: MatchRule *match_rule_user_unref(MatchRule *rule)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/bus/match.c:801,1
    - Dst: match_registry_by_keys_ref
      Src: /src/dbus-broker/src/bus/match.c:802,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - rule
    - registry
    argTypes:
    - MatchRule*
    - MatchRegistryByKeys*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 803
      start: 800
    functionDepth: 1
    functionLinenumber: 800
    functionLinenumberEnd: 803
    functionName: match_rule_link_by_keys
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - match_registry_by_keys_ref
    - c_list_link_tail
    linkageType: ''
    returnType: void
    signature: void match_rule_link_by_keys(MatchRule *rule, MatchRegistryByKeys *registry)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/match.c:806,1
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/bus/match.c:810,1
    - Dst: match_registry_by_keys_ref
      Src: /src/dbus-broker/src/bus/match.c:812,1
    - Dst: c_rbnode_entry
      Src: /src/dbus-broker/src/bus/match.c:812,1
    - Dst: match_registry_by_keys_new
      Src: /src/dbus-broker/src/bus/match.c:814,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/match.c:816,1
    - Dst: match_registry_by_keys_link
      Src: /src/dbus-broker/src/bus/match.c:818,1
    - Dst: match_rule_link_by_keys
      Src: /src/dbus-broker/src/bus/match.c:821,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - rule
    - registry
    argTypes:
    - MatchRule*
    - MatchRegistryByMember*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 824
      start: 805
    functionDepth: 2
    functionLinenumber: 805
    functionLinenumberEnd: 824
    functionName: match_rule_link_by_member
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_rbtree_find_slot
    - match_registry_by_keys_ref
    - match_registry_by_keys_link
    - match_rule_link_by_keys
    - _c_cleanup_
    - error_trace
    - match_registry_by_keys_new
    - c_rbnode_entry
    linkageType: ''
    returnType: int
    signature: int match_rule_link_by_member(MatchRule *rule, MatchRegistryByMember
      *registry)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/match.c:827,1
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/bus/match.c:831,1
    - Dst: match_registry_by_member_ref
      Src: /src/dbus-broker/src/bus/match.c:833,1
    - Dst: c_rbnode_entry
      Src: /src/dbus-broker/src/bus/match.c:833,1
    - Dst: match_registry_by_member_new
      Src: /src/dbus-broker/src/bus/match.c:835,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/match.c:837,1
    - Dst: match_registry_by_member_link
      Src: /src/dbus-broker/src/bus/match.c:839,1
    - Dst: match_rule_link_by_member
      Src: /src/dbus-broker/src/bus/match.c:842,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/match.c:844,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - rule
    - registry
    argTypes:
    - MatchRule*
    - MatchRegistryByInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 826
    functionDepth: 3
    functionLinenumber: 826
    functionLinenumberEnd: 847
    functionName: match_rule_link_by_interface
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - match_registry_by_member_link
    - c_rbtree_find_slot
    - _c_cleanup_
    - match_registry_by_member_new
    - error_trace
    - match_rule_link_by_member
    - match_registry_by_member_ref
    - c_rbnode_entry
    linkageType: ''
    returnType: int
    signature: int match_rule_link_by_interface(MatchRule *rule, MatchRegistryByInterface
      *registry)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/match.c:850,1
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/bus/match.c:854,1
    - Dst: match_registry_by_interface_ref
      Src: /src/dbus-broker/src/bus/match.c:856,1
    - Dst: c_rbnode_entry
      Src: /src/dbus-broker/src/bus/match.c:856,1
    - Dst: match_registry_by_interface_new
      Src: /src/dbus-broker/src/bus/match.c:858,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/match.c:860,1
    - Dst: match_registry_by_interface_link
      Src: /src/dbus-broker/src/bus/match.c:862,1
    - Dst: match_rule_link_by_interface
      Src: /src/dbus-broker/src/bus/match.c:865,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/match.c:867,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - rule
    - registry
    argTypes:
    - MatchRule*
    - MatchRegistryByPath*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 870
      start: 849
    functionDepth: 4
    functionLinenumber: 849
    functionLinenumberEnd: 870
    functionName: match_rule_link_by_path
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - match_registry_by_interface_ref
    - c_rbtree_find_slot
    - match_registry_by_interface_new
    - _c_cleanup_
    - error_trace
    - match_registry_by_interface_link
    - match_rule_link_by_interface
    - c_rbnode_entry
    linkageType: ''
    returnType: int
    signature: int match_rule_link_by_path(MatchRule *rule, MatchRegistryByPath *registry)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/match.c:876,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:882,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:883,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/bus/match.c:883,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:884,1
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/bus/match.c:894,1
    - Dst: match_registry_by_path_ref
      Src: /src/dbus-broker/src/bus/match.c:896,1
    - Dst: c_rbnode_entry
      Src: /src/dbus-broker/src/bus/match.c:896,1
    - Dst: match_registry_by_path_new
      Src: /src/dbus-broker/src/bus/match.c:898,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/match.c:900,1
    - Dst: match_registry_by_path_link
      Src: /src/dbus-broker/src/bus/match.c:902,1
    - Dst: match_rule_link_by_path
      Src: /src/dbus-broker/src/bus/match.c:905,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/match.c:907,1
    - Dst: util_peak_update
      Src: /src/dbus-broker/src/bus/match.c:915,1
    - Dst: util_peak_update
      Src: /src/dbus-broker/src/bus/match.c:916,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 32
    argCount: 4
    argNames:
    - rule
    - counters
    - registry
    - monitor
    argTypes:
    - MatchRule*
    - MatchCounters*
    - MatchRegistry*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 920
      start: 875
    functionDepth: 5
    functionLinenumber: 875
    functionLinenumberEnd: 920
    functionName: match_rule_link
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 1
    functionsReached:
    - c_list_is_linked
    - match_registry_by_path_new
    - c_rbtree_find_slot
    - match_registry_by_path_ref
    - _c_cleanup_
    - match_registry_by_path_link
    - error_trace
    - c_assert
    - util_peak_update
    - match_rule_link_by_path
    - c_rbnode_entry
    linkageType: ''
    returnType: int
    signature: int match_rule_link(MatchRule *rule, MatchCounters *counters, MatchRegistry
      *registry, bool monitor)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/bus/match.c:932,1
    - Dst: match_registry_by_keys_unref
      Src: /src/dbus-broker/src/bus/match.c:933,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - rule
    argTypes:
    - MatchRule*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 937
      start: 925
    functionDepth: 4
    functionLinenumber: 925
    functionLinenumberEnd: 937
    functionName: match_rule_unlink
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 1
    functionsReached:
    - c_list_unlink
    - match_registry_by_keys_unref
    linkageType: ''
    returnType: void
    signature: void match_rule_unlink(MatchRule *rule)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MATCH_OWNER_INIT
      Src: /src/dbus-broker/src/bus/match.c:943,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - owner
    argTypes:
    - MatchOwner*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 944
      start: 942
    functionDepth: 1
    functionLinenumber: 942
    functionLinenumberEnd: 944
    functionName: match_owner_init
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - MATCH_OWNER_INIT
    linkageType: ''
    returnType: void
    signature: void match_owner_init(MatchOwner *owner)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:950,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/bus/match.c:950,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:951,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/bus/match.c:951,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - owner
    argTypes:
    - MatchOwner*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 952
      start: 949
    functionDepth: 0
    functionLinenumber: 949
    functionLinenumberEnd: 952
    functionName: match_owner_deinit
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 1
    functionsReached:
    - c_assert
    - c_rbtree_is_empty
    - c_list_is_linked
    linkageType: ''
    returnType: void
    signature: void match_owner_deinit(MatchOwner *owner)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/match.c:961,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - owner
    - n_bytesp
    - n_matchesp
    argTypes:
    - MatchOwner*
    - unsigned int*
    - unsigned int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 968
      start: 957
    functionDepth: 0
    functionLinenumber: 957
    functionLinenumberEnd: 968
    functionName: match_owner_get_stats
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_rbtree_for_each_entry
    linkageType: ''
    returnType: void
    signature: void match_owner_get_stats(MatchOwner *owner, unsigned int *n_bytesp,
      unsigned int *n_matchesp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_move
      Src: /src/dbus-broker/src/bus/match.c:974,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - to
    - from
    argTypes:
    - MatchOwner*
    - MatchOwner*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 975
      start: 973
    functionDepth: 0
    functionLinenumber: 973
    functionLinenumberEnd: 975
    functionName: match_owner_move
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 1
    functionsReached:
    - c_rbtree_move
    linkageType: ''
    returnType: void
    signature: void match_owner_move(MatchOwner *to, MatchOwner *from)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: match_rule_new
      Src: /src/dbus-broker/src/bus/match.c:985,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/match.c:987,1
    - Dst: c_rbtree_find_slot
      Src: /src/dbus-broker/src/bus/match.c:991,1
    - Dst: match_rule_user_unref
      Src: /src/dbus-broker/src/bus/match.c:994,1
    - Dst: match_rule_user_ref
      Src: /src/dbus-broker/src/bus/match.c:995,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/match.c:995,1
    - Dst: c_rbtree_add
      Src: /src/dbus-broker/src/bus/match.c:998,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 5
    argNames:
    - owner
    - rulep
    - user
    - rule_string
    - allow_eavesdrop
    argTypes:
    - MatchOwner*
    - MatchRule**
    - User*
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1004
      start: 980
    functionDepth: 6
    functionLinenumber: 980
    functionLinenumberEnd: 1004
    functionName: match_owner_ref_rule
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 1
    functionsReached:
    - match_rule_new
    - c_rbtree_find_slot
    - match_rule_user_ref
    - c_rbtree_add
    - error_trace
    - c_container_of
    - match_rule_user_unref
    linkageType: ''
    returnType: int
    signature: int match_owner_ref_rule(MatchOwner *owner, MatchRule **rulep, User
      *user, const char *rule_string, bool allow_eavesdrop)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/match.c:1010,1
    - Dst: match_keys_new
      Src: /src/dbus-broker/src/bus/match.c:1013,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/match.c:1015,1
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/bus/match.c:1017,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - owner
    - rulep
    - rule_string
    argTypes:
    - MatchOwner*
    - MatchRule**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1019
      start: 1009
    functionDepth: 6
    functionLinenumber: 1009
    functionLinenumberEnd: 1019
    functionName: match_owner_find_rule
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 1
    functionsReached:
    - _c_cleanup_
    - error_trace
    - c_rbtree_find_entry
    - match_keys_new
    linkageType: ''
    returnType: int
    signature: int match_owner_find_rule(MatchOwner *owner, MatchRule **rulep, const
      char *rule_string)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MATCH_REGISTRY_INIT
      Src: /src/dbus-broker/src/bus/match.c:1025,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - registry
    argTypes:
    - MatchRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1026
      start: 1024
    functionDepth: 1
    functionLinenumber: 1024
    functionLinenumberEnd: 1026
    functionName: match_registry_init
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - MATCH_REGISTRY_INIT
    linkageType: ''
    returnType: void
    signature: void match_registry_init(MatchRegistry *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:1032,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/bus/match.c:1032,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:1033,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/bus/match.c:1033,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - registry
    argTypes:
    - MatchRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1034
      start: 1031
    functionDepth: 0
    functionLinenumber: 1031
    functionLinenumberEnd: 1034
    functionName: match_registry_deinit
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 3
    functionsReached:
    - c_assert
    - c_rbtree_is_empty
    linkageType: ''
    returnType: void
    signature: void match_registry_deinit(MatchRegistry *registry)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_list_for_each_entry
      Src: /src/dbus-broker/src/bus/match.c:1039,1
    - Dst: c_list_is_linked
      Src: /src/dbus-broker/src/bus/match.c:1040,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/bus/match.c:1044,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - registry
    - destinations
    argTypes:
    - MatchRegistryByKeys*
    - CList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1046
      start: 1036
    functionDepth: 0
    functionLinenumber: 1036
    functionLinenumberEnd: 1046
    functionName: match_registry_by_keys_get_destinations
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_list_for_each_entry
    - c_list_is_linked
    - c_list_link_tail
    linkageType: ''
    returnType: void
    signature: void match_registry_by_keys_get_destinations(MatchRegistryByKeys *registry,
      CList *destinations)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_for_each_entry_postorder
      Src: /src/dbus-broker/src/bus/match.c:1051,1
    - Dst: match_keys_match_metadata
      Src: /src/dbus-broker/src/bus/match.c:1052,1
    - Dst: match_registry_by_keys_get_destinations
      Src: /src/dbus-broker/src/bus/match.c:1055,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - registry
    - destinations
    - metadata
    argTypes:
    - MatchRegistryByMember*
    - CList*
    - MessageMetadata*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1057
      start: 1048
    functionDepth: 3
    functionLinenumber: 1048
    functionLinenumberEnd: 1057
    functionName: match_registry_by_member_get_destinations
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - match_registry_by_keys_get_destinations
    - match_keys_match_metadata
    - c_rbtree_for_each_entry_postorder
    linkageType: ''
    returnType: void
    signature: void match_registry_by_member_get_destinations(MatchRegistryByMember
      *registry, CList *destinations, MessageMetadata *metadata)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/bus/match.c:1062,1
    - Dst: match_registry_by_member_get_destinations
      Src: /src/dbus-broker/src/bus/match.c:1064,1
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/bus/match.c:1067,1
    - Dst: match_registry_by_member_get_destinations
      Src: /src/dbus-broker/src/bus/match.c:1069,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - registry
    - destinations
    - metadata
    argTypes:
    - MatchRegistryByInterface*
    - CList*
    - MessageMetadata*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1071
      start: 1059
    functionDepth: 4
    functionLinenumber: 1059
    functionLinenumberEnd: 1071
    functionName: match_registry_by_interface_get_destinations
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - match_registry_by_member_get_destinations
    - c_rbtree_find_entry
    linkageType: ''
    returnType: void
    signature: void match_registry_by_interface_get_destinations(MatchRegistryByInterface
      *registry, CList *destinations, MessageMetadata *metadata)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/bus/match.c:1076,1
    - Dst: match_registry_by_interface_get_destinations
      Src: /src/dbus-broker/src/bus/match.c:1078,1
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/bus/match.c:1081,1
    - Dst: match_registry_by_interface_get_destinations
      Src: /src/dbus-broker/src/bus/match.c:1083,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - registry
    - destinations
    - metadata
    argTypes:
    - MatchRegistryByPath*
    - CList*
    - MessageMetadata*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1086
      start: 1073
    functionDepth: 5
    functionLinenumber: 1073
    functionLinenumberEnd: 1086
    functionName: match_registry_by_path_get_destinations
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - match_registry_by_interface_get_destinations
    - c_rbtree_find_entry
    linkageType: ''
    returnType: void
    signature: void match_registry_by_path_get_destinations(MatchRegistryByPath *registry,
      CList *destinations, MessageMetadata *metadata)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/bus/match.c:1091,1
    - Dst: match_registry_by_path_get_destinations
      Src: /src/dbus-broker/src/bus/match.c:1093,1
    - Dst: c_rbtree_find_entry
      Src: /src/dbus-broker/src/bus/match.c:1096,1
    - Dst: match_registry_by_path_get_destinations
      Src: /src/dbus-broker/src/bus/match.c:1098,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - tree
    - destinations
    - metadata
    argTypes:
    - CRBTree*
    - CList*
    - MessageMetadata*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1101
      start: 1088
    functionDepth: 6
    functionLinenumber: 1088
    functionLinenumberEnd: 1101
    functionName: match_registry_get_destinations
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_rbtree_find_entry
    - match_registry_by_path_get_destinations
    linkageType: ''
    returnType: void
    signature: void match_registry_get_destinations(CRBTree *tree, CList *destinations,
      MessageMetadata *metadata)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: match_registry_get_destinations
      Src: /src/dbus-broker/src/bus/match.c:1104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - registry
    - destinations
    - metadata
    argTypes:
    - MatchRegistry*
    - CList*
    - MessageMetadata*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1105
      start: 1103
    functionDepth: 7
    functionLinenumber: 1103
    functionLinenumberEnd: 1105
    functionName: match_registry_get_subscribers
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 1
    functionsReached:
    - match_registry_get_destinations
    linkageType: ''
    returnType: void
    signature: void match_registry_get_subscribers(MatchRegistry *registry, CList
      *destinations, MessageMetadata *metadata)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: match_registry_get_destinations
      Src: /src/dbus-broker/src/bus/match.c:1108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - registry
    - destinations
    - metadata
    argTypes:
    - MatchRegistry*
    - CList*
    - MessageMetadata*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1107
    functionDepth: 7
    functionLinenumber: 1107
    functionLinenumberEnd: 1109
    functionName: match_registry_get_monitors
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 1
    functionsReached:
    - match_registry_get_destinations
    linkageType: ''
    returnType: void
    signature: void match_registry_get_monitors(MatchRegistry *registry, CList *destinations,
      MessageMetadata *metadata)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_list_for_each_entry_safe
      Src: /src/dbus-broker/src/bus/match.c:1114,1
    - Dst: match_rule_unlink
      Src: /src/dbus-broker/src/bus/match.c:1115,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:1117,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/bus/match.c:1117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - registry
    argTypes:
    - MatchRegistryByKeys*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1118
      start: 1111
    functionDepth: 5
    functionLinenumber: 1111
    functionLinenumberEnd: 1118
    functionName: match_registry_by_keys_flush
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_assert
    - c_list_for_each_entry_safe
    - c_list_is_empty
    - match_rule_unlink
    linkageType: ''
    returnType: void
    signature: void match_registry_by_keys_flush(MatchRegistryByKeys *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_for_each_entry_safe
      Src: /src/dbus-broker/src/bus/match.c:1123,1
    - Dst: match_registry_by_keys_ref
      Src: /src/dbus-broker/src/bus/match.c:1124,1
    - Dst: match_registry_by_keys_flush
      Src: /src/dbus-broker/src/bus/match.c:1125,1
    - Dst: match_registry_by_keys_unref
      Src: /src/dbus-broker/src/bus/match.c:1126,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:1129,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/bus/match.c:1129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - registry
    argTypes:
    - MatchRegistryByMember*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1130
      start: 1120
    functionDepth: 6
    functionLinenumber: 1120
    functionLinenumberEnd: 1130
    functionName: match_registry_by_member_flush
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_rbtree_is_empty
    - match_registry_by_keys_unref
    - match_registry_by_keys_ref
    - match_registry_by_keys_flush
    - c_assert
    - c_rbtree_for_each_entry_safe
    linkageType: ''
    returnType: void
    signature: void match_registry_by_member_flush(MatchRegistryByMember *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_for_each_entry_safe
      Src: /src/dbus-broker/src/bus/match.c:1135,1
    - Dst: match_registry_by_member_ref
      Src: /src/dbus-broker/src/bus/match.c:1136,1
    - Dst: match_registry_by_member_flush
      Src: /src/dbus-broker/src/bus/match.c:1137,1
    - Dst: match_registry_by_member_unref
      Src: /src/dbus-broker/src/bus/match.c:1138,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:1141,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/bus/match.c:1141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - registry
    argTypes:
    - MatchRegistryByInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1142
      start: 1132
    functionDepth: 7
    functionLinenumber: 1132
    functionLinenumberEnd: 1142
    functionName: match_registry_by_interface_flush
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_rbtree_for_each_entry_safe
    - c_rbtree_is_empty
    - match_registry_by_member_unref
    - c_assert
    - match_registry_by_member_ref
    - match_registry_by_member_flush
    linkageType: ''
    returnType: void
    signature: void match_registry_by_interface_flush(MatchRegistryByInterface *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_rbtree_for_each_entry_safe
      Src: /src/dbus-broker/src/bus/match.c:1147,1
    - Dst: match_registry_by_interface_ref
      Src: /src/dbus-broker/src/bus/match.c:1148,1
    - Dst: match_registry_by_interface_flush
      Src: /src/dbus-broker/src/bus/match.c:1149,1
    - Dst: match_registry_by_interface_unref
      Src: /src/dbus-broker/src/bus/match.c:1150,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:1153,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/bus/match.c:1153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - registry
    argTypes:
    - MatchRegistryByPath*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1154
      start: 1144
    functionDepth: 8
    functionLinenumber: 1144
    functionLinenumberEnd: 1154
    functionName: match_registry_by_path_flush
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - match_registry_by_interface_flush
    - match_registry_by_interface_ref
    - c_rbtree_is_empty
    - c_assert
    - match_registry_by_interface_unref
    - c_rbtree_for_each_entry_safe
    linkageType: ''
    returnType: void
    signature: void match_registry_by_path_flush(MatchRegistryByPath *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/bus/match.c:1179,1
    - Dst: match_registry_by_path_ref
      Src: /src/dbus-broker/src/bus/match.c:1181,1
    - Dst: match_registry_by_path_flush
      Src: /src/dbus-broker/src/bus/match.c:1182,1
    - Dst: match_registry_by_path_unref
      Src: /src/dbus-broker/src/bus/match.c:1183,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/match.c:1186,1
    - Dst: c_rbtree_is_empty
      Src: /src/dbus-broker/src/bus/match.c:1186,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - registry
    argTypes:
    - MatchRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1188
      start: 1171
    functionDepth: 9
    functionLinenumber: 1171
    functionLinenumberEnd: 1188
    functionName: match_registry_flush
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 0
    functionsReached:
    - c_rbtree_is_empty
    - match_registry_by_path_ref
    - match_registry_by_path_unref
    - match_registry_by_path_flush
    - C_ARRAY_SIZE
    - c_assert
    linkageType: ''
    returnType: void
    signature: void match_registry_flush(MatchRegistry *registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: match_registry_by_path_ref
      Src: /src/dbus-broker/src/bus/match.c:1181,1
    - Dst: match_registry_by_path_flush
      Src: /src/dbus-broker/src/bus/match.c:1182,1
    - Dst: match_registry_by_path_unref
      Src: /src/dbus-broker/src/bus/match.c:1183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1184
      start: 1180
    functionDepth: 9
    functionLinenumber: 1180
    functionLinenumberEnd: 1184
    functionName: c_rbtree_for_each_entry_safe
    functionSourceFile: /src/dbus-broker/src/bus/match.c
    functionUses: 5
    functionsReached:
    - match_registry_by_path_flush
    - match_registry_by_path_ref
    - match_registry_by_path_unref
    linkageType: ''
    returnType: void
    signature: void c_rbtree_for_each_entry_safe(registry_by_path, registry_by_path_safe,
      trees[i], registry_node)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: REPLY_OWNER_INIT
    functionSourceFile: /src/dbus-broker/src/bus/reply.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: REPLY_OWNER_INIT(_x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: name_registry_find_name
      Src: /src/dbus-broker/src/bus/test-name.c:16,1
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/bus/test-name.c:20,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - registry
    - name_str
    argTypes:
    - NameRegistry*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 12
    functionDepth: 1
    functionLinenumber: 12
    functionLinenumberEnd: 22
    functionName: resolve_owner
    functionSourceFile: /src/dbus-broker/src/bus/test-name.c
    functionUses: 0
    functionsReached:
    - name_registry_find_name
    - c_list_first_entry
    linkageType: ''
    returnType: NameOwner
    signature: NameOwner *resolve_owner(NameRegistry *registry, const char *name_str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name_registry_init
      Src: /src/dbus-broker/src/bus/test-name.c:30,1
    - Dst: name_owner_init
      Src: /src/dbus-broker/src/bus/test-name.c:31,1
    - Dst: name_change_init
      Src: /src/dbus-broker/src/bus/test-name.c:32,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:34,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:35,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:36,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/test-name.c:36,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:37,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:38,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:39,1
    - Dst: resolve_owner
      Src: /src/dbus-broker/src/bus/test-name.c:40,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:41,1
    - Dst: name_registry_release_name
      Src: /src/dbus-broker/src/bus/test-name.c:42,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:43,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:44,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/test-name.c:44,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:45,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:46,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:47,1
    - Dst: resolve_owner
      Src: /src/dbus-broker/src/bus/test-name.c:48,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:49,1
    - Dst: name_owner_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:51,1
    - Dst: name_registry_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 24
    functionDepth: 7
    functionLinenumber: 24
    functionLinenumberEnd: 53
    functionName: test_setup
    functionSourceFile: /src/dbus-broker/src/bus/test-name.c
    functionUses: 4
    functionsReached:
    - name_registry_deinit
    - name_registry_release_name
    - name_change_deinit
    - name_owner_deinit
    - strcmp
    - c_assert
    - name_owner_init
    - name_registry_init
    - name_registry_request_name
    - resolve_owner
    - name_change_init
    linkageType: ''
    returnType: void
    signature: void test_setup(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name_registry_init
      Src: /src/dbus-broker/src/bus/test-name.c:61,1
    - Dst: name_owner_init
      Src: /src/dbus-broker/src/bus/test-name.c:62,1
    - Dst: name_owner_init
      Src: /src/dbus-broker/src/bus/test-name.c:63,1
    - Dst: name_change_init
      Src: /src/dbus-broker/src/bus/test-name.c:64,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:66,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:67,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:68,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/test-name.c:68,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:69,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:70,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:71,1
    - Dst: name_registry_release_name
      Src: /src/dbus-broker/src/bus/test-name.c:73,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:74,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:75,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:76,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:77,1
    - Dst: name_registry_release_name
      Src: /src/dbus-broker/src/bus/test-name.c:78,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:79,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:80,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:81,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:82,1
    - Dst: name_registry_release_name
      Src: /src/dbus-broker/src/bus/test-name.c:83,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:84,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:85,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/test-name.c:85,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:86,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:87,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:88,1
    - Dst: name_owner_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:90,1
    - Dst: name_owner_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:91,1
    - Dst: name_registry_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 55
    functionDepth: 7
    functionLinenumber: 55
    functionLinenumberEnd: 93
    functionName: test_release
    functionSourceFile: /src/dbus-broker/src/bus/test-name.c
    functionUses: 0
    functionsReached:
    - name_registry_deinit
    - name_registry_release_name
    - name_change_deinit
    - name_owner_deinit
    - strcmp
    - c_assert
    - name_owner_init
    - name_registry_init
    - name_registry_request_name
    - name_change_init
    linkageType: ''
    returnType: void
    signature: void test_release(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name_registry_init
      Src: /src/dbus-broker/src/bus/test-name.c:101,1
    - Dst: name_owner_init
      Src: /src/dbus-broker/src/bus/test-name.c:102,1
    - Dst: name_owner_init
      Src: /src/dbus-broker/src/bus/test-name.c:103,1
    - Dst: name_change_init
      Src: /src/dbus-broker/src/bus/test-name.c:104,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:107,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:108,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:109,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/test-name.c:109,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:110,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:111,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:112,1
    - Dst: resolve_owner
      Src: /src/dbus-broker/src/bus/test-name.c:114,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:115,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:117,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:118,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:119,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:120,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:121,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:123,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:124,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:125,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:126,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:127,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:129,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:130,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:131,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:132,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:133,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:135,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:136,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:137,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:138,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:139,1
    - Dst: resolve_owner
      Src: /src/dbus-broker/src/bus/test-name.c:141,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:142,1
    - Dst: name_registry_release_name
      Src: /src/dbus-broker/src/bus/test-name.c:144,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:145,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:146,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:147,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:148,1
    - Dst: resolve_owner
      Src: /src/dbus-broker/src/bus/test-name.c:150,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:151,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:153,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:154,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:155,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:156,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:157,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:159,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:160,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:161,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:162,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:163,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:165,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:166,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:167,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:168,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:169,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:171,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:172,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:173,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:174,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:175,1
    - Dst: resolve_owner
      Src: /src/dbus-broker/src/bus/test-name.c:177,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:178,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:181,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:186,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:187,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/test-name.c:187,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:188,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:189,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:190,1
    - Dst: resolve_owner
      Src: /src/dbus-broker/src/bus/test-name.c:192,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:193,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:195,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:196,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:197,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/test-name.c:197,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:198,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:199,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:200,1
    - Dst: resolve_owner
      Src: /src/dbus-broker/src/bus/test-name.c:202,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:203,1
    - Dst: name_registry_release_name
      Src: /src/dbus-broker/src/bus/test-name.c:205,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:206,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:207,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:208,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:209,1
    - Dst: name_registry_release_name
      Src: /src/dbus-broker/src/bus/test-name.c:211,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:212,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:213,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/test-name.c:213,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:214,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:215,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:216,1
    - Dst: name_owner_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:218,1
    - Dst: name_owner_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:219,1
    - Dst: name_registry_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 94
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 95
    functionDepth: 7
    functionLinenumber: 95
    functionLinenumberEnd: 221
    functionName: test_queue
    functionSourceFile: /src/dbus-broker/src/bus/test-name.c
    functionUses: 0
    functionsReached:
    - name_registry_deinit
    - name_registry_release_name
    - name_change_deinit
    - name_owner_deinit
    - strcmp
    - c_assert
    - name_owner_init
    - name_registry_init
    - name_registry_request_name
    - resolve_owner
    - name_change_init
    linkageType: ''
    returnType: void
    signature: void test_queue(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name_registry_init
      Src: /src/dbus-broker/src/bus/test-name.c:235,1
    - Dst: name_owner_init
      Src: /src/dbus-broker/src/bus/test-name.c:236,1
    - Dst: name_owner_init
      Src: /src/dbus-broker/src/bus/test-name.c:237,1
    - Dst: name_change_init
      Src: /src/dbus-broker/src/bus/test-name.c:238,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:240,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:241,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:242,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:243,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:244,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:247,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:248,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:249,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:251,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:252,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:253,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:254,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:255,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:258,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:259,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:260,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:261,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:262,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:263,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:264,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:265,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:267,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:268,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:269,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:270,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:271,1
    - Dst: name_registry_release_name
      Src: /src/dbus-broker/src/bus/test-name.c:274,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:275,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:277,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:278,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:279,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:280,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:281,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:284,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:285,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:286,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:287,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:288,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:289,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:291,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:292,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:293,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:294,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:295,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:298,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:303,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:304,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:306,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:307,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:308,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:309,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:310,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:313,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:314,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:315,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:317,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:318,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:319,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:320,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:321,1
    - Dst: name_registry_release_name
      Src: /src/dbus-broker/src/bus/test-name.c:324,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:325,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:326,1
    - Dst: name_owner_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:328,1
    - Dst: name_owner_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:329,1
    - Dst: name_registry_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 71
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 223
    functionDepth: 7
    functionLinenumber: 223
    functionLinenumberEnd: 331
    functionName: test_queue_counters
    functionSourceFile: /src/dbus-broker/src/bus/test-name.c
    functionUses: 0
    functionsReached:
    - name_registry_deinit
    - name_registry_release_name
    - name_change_deinit
    - name_owner_deinit
    - c_assert
    - name_owner_init
    - name_registry_init
    - name_registry_request_name
    - name_change_init
    linkageType: ''
    returnType: void
    signature: void test_queue_counters(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name_registry_init
      Src: /src/dbus-broker/src/bus/test-name.c:344,1
    - Dst: name_owner_init
      Src: /src/dbus-broker/src/bus/test-name.c:345,1
    - Dst: name_owner_init
      Src: /src/dbus-broker/src/bus/test-name.c:346,1
    - Dst: name_change_init
      Src: /src/dbus-broker/src/bus/test-name.c:347,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:349,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:350,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:351,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:352,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:353,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:356,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:357,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:358,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:360,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:361,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:362,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:363,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:364,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:367,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:368,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:369,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:371,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:372,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:373,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:374,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:375,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:378,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:379,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:380,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:382,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:383,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:384,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:385,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:386,1
    - Dst: name_registry_request_name
      Src: /src/dbus-broker/src/bus/test-name.c:389,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:390,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:391,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:393,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:394,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:395,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:396,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:397,1
    - Dst: name_registry_release_name
      Src: /src/dbus-broker/src/bus/test-name.c:400,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:401,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:402,1
    - Dst: name_registry_release_name
      Src: /src/dbus-broker/src/bus/test-name.c:403,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:404,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:405,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:407,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:408,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:409,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:410,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:411,1
    - Dst: name_registry_release_name
      Src: /src/dbus-broker/src/bus/test-name.c:413,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:414,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:415,1
    - Dst: name_registry_release_name
      Src: /src/dbus-broker/src/bus/test-name.c:416,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:417,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:418,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:420,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:421,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:422,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:423,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-name.c:424,1
    - Dst: name_owner_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:426,1
    - Dst: name_owner_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:427,1
    - Dst: name_registry_deinit
      Src: /src/dbus-broker/src/bus/test-name.c:428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 67
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 333
    functionDepth: 7
    functionLinenumber: 333
    functionLinenumberEnd: 429
    functionName: test_peak_counters
    functionSourceFile: /src/dbus-broker/src/bus/test-name.c
    functionUses: 0
    functionsReached:
    - name_registry_deinit
    - name_registry_release_name
    - name_change_deinit
    - name_owner_deinit
    - c_assert
    - name_owner_init
    - name_registry_init
    - name_registry_request_name
    - name_change_init
    linkageType: ''
    returnType: void
    signature: void test_peak_counters(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_setup
      Src: /src/dbus-broker/src/bus/test-name.c:432,1
    - Dst: test_release
      Src: /src/dbus-broker/src/bus/test-name.c:433,1
    - Dst: test_queue
      Src: /src/dbus-broker/src/bus/test-name.c:434,1
    - Dst: test_queue_counters
      Src: /src/dbus-broker/src/bus/test-name.c:435,1
    - Dst: test_peak_counters
      Src: /src/dbus-broker/src/bus/test-name.c:436,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 431
    functionDepth: 8
    functionLinenumber: 431
    functionLinenumberEnd: 438
    functionName: main
    functionSourceFile: /src/dbus-broker/src/bus/test-name.c
    functionUses: 0
    functionsReached:
    - test_setup
    - test_peak_counters
    - test_queue_counters
    - test_queue
    - test_release
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _body
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 89
    functionName: DRIVER_T_MESSAGE
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DRIVER_T_MESSAGE(_body)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:241,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:243,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:244,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - var
    - bytes
    - n_bytes
    argTypes:
    - CDVar*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 245
    functionName: driver_write_bytes
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_write
    linkageType: ''
    returnType: void
    signature: void driver_write_bytes(CDVar *var, const char *bytes, size_t n_bytes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:248,1
    - Dst: address_to_string
      Src: /src/dbus-broker/src/bus/driver.c:248,1
    - Dst: ADDRESS_INIT_ID
      Src: /src/dbus-broker/src/bus/driver.c:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - var
    - peer
    argTypes:
    - CDVar*
    - Peer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 247
    functionDepth: 1
    functionLinenumber: 247
    functionLinenumberEnd: 249
    functionName: driver_dvar_write_unique_name
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - ADDRESS_INIT_ID
    - address_to_string
    - c_dvar_write
    linkageType: ''
    returnType: void
    signature: void driver_dvar_write_unique_name(CDVar *var, Peer *peer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:254,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/driver.c:254,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:255,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:256,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:257,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:258,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:259,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:260,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:261,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:262,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:263,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:264,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:265,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:266,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:267,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:268,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:269,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:270,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:271,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/driver.c:273,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/driver.c:273,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/driver.c:276,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:278,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 2
    argNames:
    - var
    - type
    argTypes:
    - CDVar*
    - CDVarType*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 279
    functionName: driver_dvar_write_signature_out
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_assert
    - c_dvar_write
    - strlen
    linkageType: ''
    returnType: void
    signature: void driver_dvar_write_signature_out(CDVar *var, const CDVarType *type)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/driver.c:282,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:285,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:286,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - type
    - signature
    argTypes:
    - CDVarType*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 281
    functionDepth: 0
    functionLinenumber: 281
    functionLinenumberEnd: 293
    functionName: driver_dvar_verify_signature_in
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_assert
    - strlen
    linkageType: ''
    returnType: int
    signature: int driver_dvar_verify_signature_in(const CDVarType *type, const char
      *signature)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:296,1
    - Dst: c_dvar_is_big_endian
      Src: /src/dbus-broker/src/bus/driver.c:297,1
    - Dst: driver_dvar_write_unique_name
      Src: /src/dbus-broker/src/bus/driver.c:301,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:302,1
    - Dst: driver_dvar_write_signature_out
      Src: /src/dbus-broker/src/bus/driver.c:304,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:305,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:307,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - var
    - peer
    - serial
    - type
    - n_fds
    argTypes:
    - CDVar*
    - Peer*
    - uint32_t
    - CDVarType*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 295
    functionDepth: 2
    functionLinenumber: 295
    functionLinenumberEnd: 309
    functionName: driver_write_reply_header
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - driver_dvar_write_unique_name
    - driver_dvar_write_signature_out
    - c_dvar_write
    - c_dvar_is_big_endian
    linkageType: ''
    returnType: void
    signature: void driver_write_reply_header(CDVar *var, Peer *peer, uint32_t serial,
      const CDVarType *type, size_t n_fds)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:312,1
    - Dst: c_dvar_is_big_endian
      Src: /src/dbus-broker/src/bus/driver.c:313,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:317,1
    - Dst: driver_dvar_write_unique_name
      Src: /src/dbus-broker/src/bus/driver.c:318,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:319,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:322,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - var
    - peer
    - member
    - signature
    argTypes:
    - CDVar*
    - Peer*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 311
    functionDepth: 2
    functionLinenumber: 311
    functionLinenumberEnd: 327
    functionName: driver_write_signal_header
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - driver_dvar_write_unique_name
    - c_dvar_write
    - c_dvar_is_big_endian
    linkageType: ''
    returnType: void
    signature: void driver_write_signal_header(CDVar *var, Peer *peer, const char
      *member, const char *signature)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:367,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - r
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 370
    functionName: driver_error_to_string
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_assert
    linkageType: ''
    returnType: char
    signature: char *driver_error_to_string(int r)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:373,1
    - Dst: C_LIST_INIT
      Src: /src/dbus-broker/src/bus/driver.c:373,1
    - Dst: message_parse_metadata
      Src: /src/dbus-broker/src/bus/driver.c:380,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:382,1
    - Dst: bus_get_monitor_destinations
      Src: /src/dbus-broker/src/bus/driver.c:384,1
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/bus/driver.c:386,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/driver.c:387,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/bus/driver.c:389,1
    - Dst: connection_queue
      Src: /src/dbus-broker/src/bus/driver.c:391,1
    - Dst: NAME_SET_INIT_FROM_OWNER
      Src: /src/dbus-broker/src/bus/driver.c:394,1
    - Dst: connection_shutdown
      Src: /src/dbus-broker/src/bus/driver.c:396,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/bus/driver.c:398,1
    - Dst: bus_log_append_transaction
      Src: /src/dbus-broker/src/bus/driver.c:399,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/driver.c:404,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/driver.c:406,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:408,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:410,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 3
    argNames:
    - bus
    - sender
    - message
    argTypes:
    - Bus*
    - Peer*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 372
    functionDepth: 4
    functionLinenumber: 372
    functionLinenumberEnd: 416
    functionName: driver_monitor
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - C_LIST_INIT
    - bus_log_append_transaction
    - log_commitf
    - c_list_first_entry
    - log_append_here
    - message_parse_metadata
    - c_list_unlink
    - connection_queue
    - _c_cleanup_
    - c_container_of
    - NAME_SET_INIT_FROM_OWNER
    - connection_shutdown
    - bus_get_monitor_destinations
    - error_fold
    linkageType: ''
    returnType: int
    signature: int driver_monitor(Bus *bus, Peer *sender, Message *message)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: driver_monitor
      Src: /src/dbus-broker/src/bus/driver.c:421,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:423,1
    - Dst: connection_queue
      Src: /src/dbus-broker/src/bus/driver.c:425,1
    - Dst: NAME_SET_INIT_FROM_OWNER
      Src: /src/dbus-broker/src/bus/driver.c:428,1
    - Dst: connection_shutdown
      Src: /src/dbus-broker/src/bus/driver.c:430,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/bus/driver.c:432,1
    - Dst: bus_log_append_transaction
      Src: /src/dbus-broker/src/bus/driver.c:433,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/driver.c:437,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/driver.c:439,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:441,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:443,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - receiver
    - message
    argTypes:
    - Peer*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 418
    functionDepth: 5
    functionLinenumber: 418
    functionLinenumberEnd: 448
    functionName: driver_send_unicast
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - bus_log_append_transaction
    - log_commitf
    - driver_monitor
    - log_append_here
    - connection_queue
    - NAME_SET_INIT_FROM_OWNER
    - connection_shutdown
    - error_fold
    linkageType: ''
    returnType: int
    signature: int driver_send_unicast(Peer *receiver, Message *message)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: C_DVAR_T_INIT
      Src: /src/dbus-broker/src/bus/driver.c:452,1
    - Dst: DRIVER_T_MESSAGE
      Src: /src/dbus-broker/src/bus/driver.c:453,1
    - Dst: C_DVAR_T_TUPLE1
      Src: /src/dbus-broker/src/bus/driver.c:454,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:460,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:461,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:462,1
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/src/bus/driver.c:470,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:471,1
    - Dst: c_dvar_is_big_endian
      Src: /src/dbus-broker/src/bus/driver.c:472,1
    - Dst: driver_dvar_write_unique_name
      Src: /src/dbus-broker/src/bus/driver.c:478,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:479,1
    - Dst: c_dvar_end_write
      Src: /src/dbus-broker/src/bus/driver.c:481,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/driver.c:483,1
    - Dst: message_new_outgoing
      Src: /src/dbus-broker/src/bus/driver.c:485,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:487,1
    - Dst: driver_send_unicast
      Src: /src/dbus-broker/src/bus/driver.c:490,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:492,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 4
    argNames:
    - receiver
    - serial
    - error
    - error_message
    argTypes:
    - Peer*
    - uint32_t
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 450
    functionDepth: 6
    functionLinenumber: 450
    functionLinenumberEnd: 495
    functionName: driver_send_error
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - C_DVAR_T_TUPLE1
    - driver_send_unicast
    - DRIVER_T_MESSAGE
    - c_dvar_begin_write
    - error_origin
    - c_dvar_is_big_endian
    - _c_cleanup_
    - driver_dvar_write_unique_name
    - message_new_outgoing
    - error_trace
    - c_dvar_write
    - C_DVAR_T_INIT
    - error_fold
    - c_dvar_end_write
    linkageType: ''
    returnType: int
    signature: int driver_send_error(Peer *receiver, uint32_t serial, const char *error,
      const char *error_message)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:498,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:499,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:503,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:512,1
    - Dst: c_dvar_end_write
      Src: /src/dbus-broker/src/bus/driver.c:514,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/driver.c:516,1
    - Dst: message_new_outgoing
      Src: /src/dbus-broker/src/bus/driver.c:522,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:524,1
    - Dst: fdlist_new_dup_fds
      Src: /src/dbus-broker/src/bus/driver.c:528,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:530,1
    - Dst: driver_send_unicast
      Src: /src/dbus-broker/src/bus/driver.c:533,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:535,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 5
    argNames:
    - peer
    - var
    - serial
    - fds
    - n_fds
    argTypes:
    - Peer*
    - CDVar*
    - uint32_t
    - int*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 497
    functionDepth: 6
    functionLinenumber: 497
    functionLinenumberEnd: 538
    functionName: driver_send_reply_with_fds
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - fdlist_new_dup_fds
    - driver_send_unicast
    - error_origin
    - _c_cleanup_
    - message_new_outgoing
    - error_trace
    - c_dvar_write
    - c_assert
    - error_fold
    - c_dvar_end_write
    linkageType: ''
    returnType: int
    signature: int driver_send_reply_with_fds(Peer *peer, CDVar *var, uint32_t serial,
      int *fds, size_t n_fds)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: driver_send_reply_with_fds
      Src: /src/dbus-broker/src/bus/driver.c:541,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - peer
    - var
    - serial
    argTypes:
    - Peer*
    - CDVar*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 540
    functionDepth: 7
    functionLinenumber: 540
    functionLinenumberEnd: 542
    functionName: driver_send_reply
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - driver_send_reply_with_fds
    linkageType: ''
    returnType: int
    signature: int driver_send_reply(Peer *peer, CDVar *var, uint32_t serial)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: C_DVAR_T_INIT
      Src: /src/dbus-broker/src/bus/driver.c:546,1
    - Dst: DRIVER_T_MESSAGE
      Src: /src/dbus-broker/src/bus/driver.c:547,1
    - Dst: C_DVAR_T_TUPLE1
      Src: /src/dbus-broker/src/bus/driver.c:548,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:554,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:555,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:556,1
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/src/bus/driver.c:560,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:561,1
    - Dst: driver_write_signal_header
      Src: /src/dbus-broker/src/bus/driver.c:562,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:563,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:564,1
    - Dst: c_dvar_end_write
      Src: /src/dbus-broker/src/bus/driver.c:565,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/driver.c:567,1
    - Dst: message_new_outgoing
      Src: /src/dbus-broker/src/bus/driver.c:569,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:571,1
    - Dst: driver_send_unicast
      Src: /src/dbus-broker/src/bus/driver.c:574,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:576,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - peer
    - name
    argTypes:
    - Peer*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 544
    functionDepth: 6
    functionLinenumber: 544
    functionLinenumberEnd: 579
    functionName: driver_notify_name_acquired
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - C_DVAR_T_TUPLE1
    - driver_write_signal_header
    - DRIVER_T_MESSAGE
    - c_dvar_begin_write
    - driver_send_unicast
    - error_origin
    - _c_cleanup_
    - message_new_outgoing
    - error_trace
    - c_dvar_write
    - C_DVAR_T_INIT
    - error_fold
    - c_dvar_end_write
    linkageType: ''
    returnType: int
    signature: int driver_notify_name_acquired(Peer *peer, const char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: C_DVAR_T_INIT
      Src: /src/dbus-broker/src/bus/driver.c:583,1
    - Dst: DRIVER_T_MESSAGE
      Src: /src/dbus-broker/src/bus/driver.c:584,1
    - Dst: C_DVAR_T_TUPLE1
      Src: /src/dbus-broker/src/bus/driver.c:585,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:591,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:592,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:593,1
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/src/bus/driver.c:597,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:598,1
    - Dst: driver_write_signal_header
      Src: /src/dbus-broker/src/bus/driver.c:599,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:600,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:601,1
    - Dst: c_dvar_end_write
      Src: /src/dbus-broker/src/bus/driver.c:602,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/driver.c:604,1
    - Dst: message_new_outgoing
      Src: /src/dbus-broker/src/bus/driver.c:606,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:608,1
    - Dst: driver_send_unicast
      Src: /src/dbus-broker/src/bus/driver.c:611,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:613,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - peer
    - name
    argTypes:
    - Peer*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 616
      start: 581
    functionDepth: 6
    functionLinenumber: 581
    functionLinenumberEnd: 616
    functionName: driver_notify_name_lost
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - C_DVAR_T_TUPLE1
    - driver_write_signal_header
    - DRIVER_T_MESSAGE
    - c_dvar_begin_write
    - driver_send_unicast
    - error_origin
    - _c_cleanup_
    - message_new_outgoing
    - error_trace
    - c_dvar_write
    - C_DVAR_T_INIT
    - error_fold
    - c_dvar_end_write
    linkageType: ''
    returnType: int
    signature: int driver_notify_name_lost(Peer *peer, const char *name)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:619,1
    - Dst: C_LIST_INIT
      Src: /src/dbus-broker/src/bus/driver.c:619,1
    - Dst: bus_get_monitor_destinations
      Src: /src/dbus-broker/src/bus/driver.c:648,1
    - Dst: bus_get_broadcast_destinations
      Src: /src/dbus-broker/src/bus/driver.c:649,1
    - Dst: c_list_is_empty
      Src: /src/dbus-broker/src/bus/driver.c:651,1
    - Dst: C_DVAR_T_INIT
      Src: /src/dbus-broker/src/bus/driver.c:653,1
    - Dst: DRIVER_T_MESSAGE
      Src: /src/dbus-broker/src/bus/driver.c:654,1
    - Dst: C_DVAR_T_TUPLE3
      Src: /src/dbus-broker/src/bus/driver.c:655,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:663,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:664,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:665,1
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/src/bus/driver.c:669,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:670,1
    - Dst: driver_write_signal_header
      Src: /src/dbus-broker/src/bus/driver.c:671,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:672,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:673,1
    - Dst: c_dvar_end_write
      Src: /src/dbus-broker/src/bus/driver.c:674,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/driver.c:676,1
    - Dst: message_new_outgoing
      Src: /src/dbus-broker/src/bus/driver.c:678,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:680,1
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/bus/driver.c:683,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/driver.c:684,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/bus/driver.c:686,1
    - Dst: policy_snapshot_check_receive
      Src: /src/dbus-broker/src/bus/driver.c:688,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:704,1
    - Dst: connection_queue
      Src: /src/dbus-broker/src/bus/driver.c:707,1
    - Dst: NAME_SET_INIT_FROM_OWNER
      Src: /src/dbus-broker/src/bus/driver.c:710,1
    - Dst: connection_shutdown
      Src: /src/dbus-broker/src/bus/driver.c:712,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/bus/driver.c:714,1
    - Dst: bus_log_append_transaction
      Src: /src/dbus-broker/src/bus/driver.c:715,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/driver.c:719,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/driver.c:721,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:723,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:725,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 46
    argCount: 5
    argNames:
    - bus
    - matches
    - name
    - old_owner
    - new_owner
    argTypes:
    - Bus*
    - MatchRegistry*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 732
      start: 618
    functionDepth: 4
    functionLinenumber: 618
    functionLinenumberEnd: 732
    functionName: driver_notify_name_owner_changed
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - driver_write_signal_header
    - DRIVER_T_MESSAGE
    - error_origin
    - c_container_of
    - C_DVAR_T_INIT
    - C_LIST_INIT
    - bus_log_append_transaction
    - log_commitf
    - log_append_here
    - _c_cleanup_
    - message_new_outgoing
    - connection_shutdown
    - bus_get_monitor_destinations
    - c_dvar_end_write
    - bus_get_broadcast_destinations
    - C_DVAR_T_TUPLE3
    - c_dvar_begin_write
    - c_list_unlink
    - policy_snapshot_check_receive
    - NAME_SET_INIT_FROM_OWNER
    - c_dvar_write
    - c_list_is_empty
    - c_list_first_entry
    - connection_queue
    - error_fold
    linkageType: ''
    returnType: int
    signature: int driver_notify_name_owner_changed(Bus *bus, MatchRegistry *matches,
      const char *name, const char *old_owner, const char *new_owner)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:738,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:739,1
    - Dst: address_to_string
      Src: /src/dbus-broker/src/bus/driver.c:741,1
    - Dst: ADDRESS_INIT_ID
      Src: /src/dbus-broker/src/bus/driver.c:741,1
    - Dst: address_to_string
      Src: /src/dbus-broker/src/bus/driver.c:742,1
    - Dst: ADDRESS_INIT_ID
      Src: /src/dbus-broker/src/bus/driver.c:742,1
    - Dst: driver_notify_name_lost
      Src: /src/dbus-broker/src/bus/driver.c:746,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:748,1
    - Dst: driver_notify_name_owner_changed
      Src: /src/dbus-broker/src/bus/driver.c:751,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:753,1
    - Dst: driver_notify_name_acquired
      Src: /src/dbus-broker/src/bus/driver.c:756,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:758,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 5
    argNames:
    - bus
    - matches
    - name
    - old_owner
    - new_owner
    argTypes:
    - Bus*
    - MatchRegistry*
    - char*
    - Peer*
    - Peer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 762
      start: 734
    functionDepth: 7
    functionLinenumber: 734
    functionLinenumberEnd: 762
    functionName: driver_name_owner_changed
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - address_to_string
    - error_trace
    - c_assert
    - driver_notify_name_acquired
    - driver_notify_name_lost
    - driver_notify_name_owner_changed
    - ADDRESS_INIT_ID
    linkageType: ''
    returnType: int
    signature: int driver_name_owner_changed(Bus *bus, MatchRegistry *matches, const
      char *name, Peer *old_owner, Peer *new_owner)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:767,1
    - Dst: asprintf
      Src: /src/dbus-broker/src/bus/driver.c:777,1
    - Dst: controller_name_error_to_human_readable
      Src: /src/dbus-broker/src/bus/driver.c:781,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/driver.c:784,1
    - Dst: c_list_for_each_entry_safe
      Src: /src/dbus-broker/src/bus/driver.c:788,1
    - Dst: peer_registry_find_peer
      Src: /src/dbus-broker/src/bus/driver.c:791,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:793,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:795,1
    - Dst: activation_request_free
      Src: /src/dbus-broker/src/bus/driver.c:798,1
    - Dst: c_list_for_each_entry_safe
      Src: /src/dbus-broker/src/bus/driver.c:801,1
    - Dst: peer_registry_find_peer
      Src: /src/dbus-broker/src/bus/driver.c:804,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:806,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:806,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:808,1
    - Dst: activation_message_free
      Src: /src/dbus-broker/src/bus/driver.c:811,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 4
    argNames:
    - bus
    - activation
    - serial
    - name_error
    argTypes:
    - Bus*
    - Activation*
    - uint64_t
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 815
      start: 764
    functionDepth: 7
    functionLinenumber: 764
    functionLinenumberEnd: 815
    functionName: driver_name_activation_failed
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 1
    functionsReached:
    - activation_request_free
    - c_list_for_each_entry_safe
    - message_read_serial
    - error_origin
    - activation_message_free
    - _c_cleanup_
    - peer_registry_find_peer
    - error_trace
    - controller_name_error_to_human_readable
    - asprintf
    - driver_send_error
    linkageType: ''
    returnType: int
    signature: int driver_name_activation_failed(Bus *bus, Activation *activation,
      uint64_t serial, unsigned int name_error)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: c_list_for_each_entry_safe
      Src: /src/dbus-broker/src/bus/driver.c:828,1
    - Dst: peer_registry_find_peer
      Src: /src/dbus-broker/src/bus/driver.c:831,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:833,1
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/src/bus/driver.c:835,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:836,1
    - Dst: driver_write_reply_header
      Src: /src/dbus-broker/src/bus/driver.c:837,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:838,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:840,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:842,1
    - Dst: activation_request_free
      Src: /src/dbus-broker/src/bus/driver.c:845,1
    - Dst: c_list_for_each_entry_safe
      Src: /src/dbus-broker/src/bus/driver.c:848,1
    - Dst: NAME_SET_INIT_FROM_SNAPSHOT
      Src: /src/dbus-broker/src/bus/driver.c:849,1
    - Dst: peer_registry_find_peer
      Src: /src/dbus-broker/src/bus/driver.c:852,1
    - Dst: peer_queue_unicast
      Src: /src/dbus-broker/src/bus/driver.c:854,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:859,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:859,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:861,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:868,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:868,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:870,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:877,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:877,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:879,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:886,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:886,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:888,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:895,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:895,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:897,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:905,1
    - Dst: activation_message_free
      Src: /src/dbus-broker/src/bus/driver.c:908,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 55
    argCount: 2
    argNames:
    - activation
    - receiver
    argTypes:
    - Activation*
    - Peer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 912
      start: 817
    functionDepth: 8
    functionLinenumber: 817
    functionLinenumberEnd: 912
    functionName: driver_name_activated
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - activation_request_free
    - c_list_for_each_entry_safe
    - c_dvar_begin_write
    - driver_write_reply_header
    - driver_send_reply
    - message_read_serial
    - activation_message_free
    - _c_cleanup_
    - peer_registry_find_peer
    - error_trace
    - c_dvar_write
    - NAME_SET_INIT_FROM_SNAPSHOT
    - peer_queue_unicast
    - driver_error_to_string
    - error_fold
    - driver_send_error
    linkageType: ''
    returnType: int
    signature: int driver_name_activated(Activation *activation, Peer *receiver)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_end_read
      Src: /src/dbus-broker/src/bus/driver.c:922,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:924,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - var
    argTypes:
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 927
      start: 914
    functionDepth: 1
    functionLinenumber: 914
    functionLinenumberEnd: 927
    functionName: driver_end_read
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_end_read
    - error_fold
    linkageType: ''
    returnType: int
    signature: int driver_end_read(CDVar *var)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/bus/driver.c:933,1
    - Dst: peer_is_registered
      Src: /src/dbus-broker/src/bus/driver.c:933,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:936,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:938,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:940,1
    - Dst: peer_register
      Src: /src/dbus-broker/src/bus/driver.c:942,1
    - Dst: address_to_string
      Src: /src/dbus-broker/src/bus/driver.c:943,1
    - Dst: ADDRESS_INIT_ID
      Src: /src/dbus-broker/src/bus/driver.c:943,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:945,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:947,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:949,1
    - Dst: driver_name_owner_changed
      Src: /src/dbus-broker/src/bus/driver.c:951,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:953,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 956
      start: 929
    functionDepth: 8
    functionLinenumber: 929
    functionLinenumberEnd: 956
    functionName: driver_method_hello
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - ADDRESS_INIT_ID
    - c_dvar_read
    - _c_unlikely_
    - driver_send_reply
    - peer_register
    - address_to_string
    - error_trace
    - c_dvar_write
    - peer_is_registered
    - driver_name_owner_changed
    - driver_end_read
    linkageType: ''
    returnType: int
    signature: int driver_method_hello(Peer *peer, const char *path, CDVar *in_v,
      uint32_t serial, CDVar *out_v)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:964,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:966,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:968,1
    - Dst: dbus_validate_name
      Src: /src/dbus-broker/src/bus/driver.c:970,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/driver.c:970,1
    - Dst: peer_request_name
      Src: /src/dbus-broker/src/bus/driver.c:973,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:991,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:993,1
    - Dst: driver_name_owner_changed
      Src: /src/dbus-broker/src/bus/driver.c:996,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/driver.c:999,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/driver.c:1000,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1002,1
    - Dst: driver_name_activated
      Src: /src/dbus-broker/src/bus/driver.c:1004,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/driver.c:1005,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1007,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/driver.c:1010,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1012,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1014,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 39
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1017
      start: 958
    functionDepth: 9
    functionLinenumber: 958
    functionLinenumberEnd: 1017
    functionName: driver_method_request_name
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - strlen
    - peer_request_name
    - c_dvar_read
    - driver_send_reply
    - name_change_deinit
    - error_trace
    - c_dvar_write
    - dbus_validate_name
    - c_container_of
    - driver_name_activated
    - driver_name_owner_changed
    - driver_end_read
    - error_fold
    linkageType: ''
    returnType: int
    signature: int driver_method_request_name(Peer *peer, const char *path, CDVar
      *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1025,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1027,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1029,1
    - Dst: dbus_validate_name
      Src: /src/dbus-broker/src/bus/driver.c:1031,1
    - Dst: strlen
      Src: /src/dbus-broker/src/bus/driver.c:1031,1
    - Dst: peer_release_name
      Src: /src/dbus-broker/src/bus/driver.c:1034,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:1046,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1048,1
    - Dst: driver_name_owner_changed
      Src: /src/dbus-broker/src/bus/driver.c:1051,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/driver.c:1054,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/driver.c:1055,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1057,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/driver.c:1060,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1062,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1064,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1067
      start: 1019
    functionDepth: 8
    functionLinenumber: 1019
    functionLinenumberEnd: 1067
    functionName: driver_method_release_name
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - strlen
    - peer_release_name
    - c_dvar_read
    - driver_send_reply
    - name_change_deinit
    - error_trace
    - c_dvar_write
    - dbus_validate_name
    - c_container_of
    - driver_name_owner_changed
    - driver_end_read
    - error_fold
    linkageType: ''
    returnType: int
    signature: int driver_method_release_name(Peer *peer, const char *path, CDVar
      *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1076,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1078,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1080,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1082,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:1083,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1084,1
    - Dst: bus_find_peer_by_name
      Src: /src/dbus-broker/src/bus/driver.c:1086,1
    - Dst: c_list_for_each_entry
      Src: /src/dbus-broker/src/bus/driver.c:1091,1
    - Dst: driver_dvar_write_unique_name
      Src: /src/dbus-broker/src/bus/driver.c:1092,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/driver.c:1092,1
    - Dst: driver_dvar_write_unique_name
      Src: /src/dbus-broker/src/bus/driver.c:1094,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1097,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1099,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1101,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1104
      start: 1069
    functionDepth: 8
    functionLinenumber: 1069
    functionLinenumberEnd: 1104
    functionName: driver_method_list_queued_owners
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_list_for_each_entry
    - c_dvar_read
    - bus_find_peer_by_name
    - driver_send_reply
    - driver_dvar_write_unique_name
    - error_trace
    - c_dvar_write
    - c_container_of
    - strcmp
    - driver_end_read
    linkageType: ''
    returnType: int
    signature: int driver_method_list_queued_owners(Peer *peer, const char *path,
      CDVar *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1111,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1113,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1115,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1117,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1118,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/driver.c:1119,1
    - Dst: peer_is_registered
      Src: /src/dbus-broker/src/bus/driver.c:1120,1
    - Dst: driver_dvar_write_unique_name
      Src: /src/dbus-broker/src/bus/driver.c:1123,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/driver.c:1125,1
    - Dst: name_primary
      Src: /src/dbus-broker/src/bus/driver.c:1126,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1129,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1131,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1133,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1135,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1138
      start: 1106
    functionDepth: 8
    functionLinenumber: 1106
    functionLinenumberEnd: 1138
    functionName: driver_method_list_names
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_read
    - name_primary
    - driver_send_reply
    - c_rbtree_for_each_entry
    - driver_dvar_write_unique_name
    - error_trace
    - c_dvar_write
    - peer_is_registered
    - driver_end_read
    linkageType: ''
    returnType: int
    signature: int driver_method_list_names(Peer *peer, const char *path, CDVar *in_v,
      uint32_t serial, CDVar *out_v)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1144,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1146,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1148,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1150,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1151,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/driver.c:1152,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1156,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1158,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1160,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1162,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1165
      start: 1140
    functionDepth: 8
    functionLinenumber: 1140
    functionLinenumberEnd: 1165
    functionName: driver_method_list_activatable_names
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_read
    - driver_send_reply
    - c_rbtree_for_each_entry
    - error_trace
    - c_dvar_write
    - driver_end_read
    linkageType: ''
    returnType: int
    signature: int driver_method_list_activatable_names(Peer *peer, const char *path,
      CDVar *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1172,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1174,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1176,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:1178,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1179,1
    - Dst: bus_find_peer_by_name
      Src: /src/dbus-broker/src/bus/driver.c:1181,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1183,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1186,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1188,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1191
      start: 1167
    functionDepth: 8
    functionLinenumber: 1167
    functionLinenumberEnd: 1191
    functionName: driver_method_name_has_owner
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_read
    - bus_find_peer_by_name
    - driver_send_reply
    - error_trace
    - c_dvar_write
    - strcmp
    - driver_end_read
    linkageType: ''
    returnType: int
    signature: int driver_method_name_has_owner(Peer *peer, const char *path, CDVar
      *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1201,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1203,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1205,1
    - Dst: name_registry_find_name
      Src: /src/dbus-broker/src/bus/driver.c:1207,1
    - Dst: name_primary
      Src: /src/dbus-broker/src/bus/driver.c:1211,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1213,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1215,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1217,1
    - Dst: activation_queue_request
      Src: /src/dbus-broker/src/bus/driver.c:1219,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:1224,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1229
      start: 1193
    functionDepth: 8
    functionLinenumber: 1193
    functionLinenumberEnd: 1229
    functionName: driver_method_start_service_by_name
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - activation_queue_request
    - c_dvar_read
    - name_primary
    - driver_send_reply
    - name_registry_find_name
    - error_trace
    - c_dvar_write
    - driver_end_read
    - error_fold
    linkageType: ''
    returnType: int
    signature: int driver_method_start_service_by_name(Peer *peer, const char *path,
      CDVar *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: peer_is_privileged
      Src: /src/dbus-broker/src/bus/driver.c:1238,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1241,1
    - Dst: c_dvar_more
      Src: /src/dbus-broker/src/bus/driver.c:1242,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1243,1
    - Dst: realloc
      Src: /src/dbus-broker/src/bus/driver.c:1247,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/driver.c:1249,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1257,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1259,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1261,1
    - Dst: broker_update_environment
      Src: /src/dbus-broker/src/bus/driver.c:1263,1
    - Dst: BROKER
      Src: /src/dbus-broker/src/bus/driver.c:1263,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:1265,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1267,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1269,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1271,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1274
      start: 1231
    functionDepth: 8
    functionLinenumber: 1231
    functionLinenumberEnd: 1274
    functionName: driver_method_update_activation_environment
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - peer_is_privileged
    - error_fold
    - c_dvar_read
    - broker_update_environment
    - driver_send_reply
    - error_origin
    - realloc
    - error_trace
    - c_dvar_write
    - c_dvar_more
    - driver_end_read
    - BROKER
    linkageType: ''
    returnType: int
    signature: int driver_method_update_activation_environment(Peer *peer, const char
      *path, CDVar *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1281,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1283,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1285,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:1287,1
    - Dst: ADDRESS_INIT_NAME
      Src: /src/dbus-broker/src/bus/driver.c:1288,1
    - Dst: bus_find_peer_by_name
      Src: /src/dbus-broker/src/bus/driver.c:1292,1
    - Dst: ADDRESS_INIT_ID
      Src: /src/dbus-broker/src/bus/driver.c:1296,1
    - Dst: address_to_string
      Src: /src/dbus-broker/src/bus/driver.c:1299,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1301,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1303,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1305,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1308
      start: 1276
    functionDepth: 8
    functionLinenumber: 1276
    functionLinenumberEnd: 1308
    functionName: driver_method_get_name_owner
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - ADDRESS_INIT_ID
    - c_dvar_read
    - bus_find_peer_by_name
    - driver_send_reply
    - ADDRESS_INIT_NAME
    - address_to_string
    - error_trace
    - c_dvar_write
    - strcmp
    - driver_end_read
    linkageType: ''
    returnType: int
    signature: int driver_method_get_name_owner(Peer *peer, const char *path, CDVar
      *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1315,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1317,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1319,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:1321,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1322,1
    - Dst: bus_find_peer_by_name
      Src: /src/dbus-broker/src/bus/driver.c:1324,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1328,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1331,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1333,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1336
      start: 1310
    functionDepth: 8
    functionLinenumber: 1310
    functionLinenumberEnd: 1336
    functionName: driver_method_get_connection_unix_user
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_read
    - bus_find_peer_by_name
    - driver_send_reply
    - error_trace
    - c_dvar_write
    - strcmp
    - driver_end_read
    linkageType: ''
    returnType: int
    signature: int driver_method_get_connection_unix_user(Peer *peer, const char *path,
      CDVar *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1343,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1345,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1347,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:1349,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1350,1
    - Dst: bus_find_peer_by_name
      Src: /src/dbus-broker/src/bus/driver.c:1352,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1356,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1359,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1361,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1364
      start: 1338
    functionDepth: 8
    functionLinenumber: 1338
    functionLinenumberEnd: 1364
    functionName: driver_method_get_connection_unix_process_id
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_read
    - bus_find_peer_by_name
    - driver_send_reply
    - error_trace
    - c_dvar_write
    - strcmp
    - driver_end_read
    linkageType: ''
    returnType: int
    signature: int driver_method_get_connection_unix_process_id(Peer *peer, const
      char *path, CDVar *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 3
    argNames:
    - bus
    - peer
    - credp
    argTypes:
    - Bus*
    - Peer*
    - DriverCredentials*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1384
      start: 1366
    functionDepth: 0
    functionLinenumber: 1366
    functionLinenumberEnd: 1384
    functionName: driver_fetch_credentials
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void driver_fetch_credentials(Bus *bus, Peer *peer, DriverCredentials
      *credp)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1387,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1390,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1392,1
    - Dst: C_DVAR_T_INIT
      Src: /src/dbus-broker/src/bus/driver.c:1405,1
    - Dst: C_DVAR_T_ARRAY
      Src: /src/dbus-broker/src/bus/driver.c:1406,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1412,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1414,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1415,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1429,1
    - Dst: C_DVAR_T_INIT
      Src: /src/dbus-broker/src/bus/driver.c:1429,1
    - Dst: C_DVAR_T_ARRAY
      Src: /src/dbus-broker/src/bus/driver.c:1429,1
    - Dst: driver_write_bytes
      Src: /src/dbus-broker/src/bus/driver.c:1430,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1431,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1436,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1440,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 3
    argNames:
    - v
    - cred
    - fd_iter
    argTypes:
    - CDVar*
    - DriverCredentials*
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1441
      start: 1386
    functionDepth: 1
    functionLinenumber: 1386
    functionLinenumberEnd: 1441
    functionName: driver_append_credentials
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - driver_write_bytes
    - C_DVAR_T_INIT
    - c_dvar_write
    - C_DVAR_T_ARRAY
    linkageType: ''
    returnType: void
    signature: void driver_append_credentials(CDVar *v, const DriverCredentials *cred,
      size_t *fd_iter)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1450,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1452,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1454,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:1456,1
    - Dst: bus_find_peer_by_name
      Src: /src/dbus-broker/src/bus/driver.c:1457,1
    - Dst: driver_fetch_credentials
      Src: /src/dbus-broker/src/bus/driver.c:1462,1
    - Dst: driver_write_reply_header
      Src: /src/dbus-broker/src/bus/driver.c:1464,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1466,1
    - Dst: driver_append_credentials
      Src: /src/dbus-broker/src/bus/driver.c:1467,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1468,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:1470,1
    - Dst: driver_send_reply_with_fds
      Src: /src/dbus-broker/src/bus/driver.c:1473,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1475,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1477,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1480
      start: 1443
    functionDepth: 8
    functionLinenumber: 1443
    functionLinenumberEnd: 1480
    functionName: driver_method_get_connection_credentials
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - driver_fetch_credentials
    - c_dvar_read
    - bus_find_peer_by_name
    - driver_write_reply_header
    - driver_send_reply_with_fds
    - driver_append_credentials
    - driver_send_reply
    - error_trace
    - c_dvar_write
    - c_assert
    - strcmp
    - driver_end_read
    linkageType: ''
    returnType: int
    signature: int driver_method_get_connection_credentials(Peer *peer, const char
      *path, CDVar *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1487,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1489,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1491,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:1493,1
    - Dst: bus_find_peer_by_name
      Src: /src/dbus-broker/src/bus/driver.c:1494,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1503
      start: 1482
    functionDepth: 2
    functionLinenumber: 1482
    functionLinenumberEnd: 1503
    functionName: driver_method_get_adt_audit_session_data
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_read
    - bus_find_peer_by_name
    - error_trace
    - strcmp
    - driver_end_read
    linkageType: ''
    returnType: int
    signature: int driver_method_get_adt_audit_session_data(Peer *peer, const char
      *path, CDVar *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1510,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1512,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1514,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:1516,1
    - Dst: bus_find_peer_by_name
      Src: /src/dbus-broker/src/bus/driver.c:1522,1
    - Dst: bus_selinux_is_enabled
      Src: /src/dbus-broker/src/bus/driver.c:1535,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1542,1
    - Dst: driver_write_bytes
      Src: /src/dbus-broker/src/bus/driver.c:1543,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1544,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1546,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1548,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1551
      start: 1505
    functionDepth: 8
    functionLinenumber: 1505
    functionLinenumberEnd: 1551
    functionName: driver_method_get_connection_selinux_security_context
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_read
    - bus_find_peer_by_name
    - bus_selinux_is_enabled
    - driver_write_bytes
    - driver_send_reply
    - error_trace
    - c_dvar_write
    - strcmp
    - driver_end_read
    linkageType: ''
    returnType: int
    signature: int driver_method_get_connection_selinux_security_context(Peer *peer,
      const char *path, CDVar *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1557,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1559,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1561,1
    - Dst: peer_add_match
      Src: /src/dbus-broker/src/bus/driver.c:1563,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1570,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1573,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1575,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1577,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1580
      start: 1553
    functionDepth: 8
    functionLinenumber: 1553
    functionLinenumberEnd: 1580
    functionName: driver_method_add_match
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_read
    - driver_send_reply
    - error_trace
    - c_dvar_write
    - driver_end_read
    - peer_add_match
    linkageType: ''
    returnType: int
    signature: int driver_method_add_match(Peer *peer, const char *path, CDVar *in_v,
      uint32_t serial, CDVar *out_v)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1586,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1588,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1590,1
    - Dst: peer_remove_match
      Src: /src/dbus-broker/src/bus/driver.c:1592,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:1599,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1602,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1604,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1606,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1609
      start: 1582
    functionDepth: 8
    functionLinenumber: 1582
    functionLinenumberEnd: 1609
    functionName: driver_method_remove_match
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_read
    - driver_send_reply
    - error_trace
    - c_dvar_write
    - peer_remove_match
    - driver_end_read
    - error_fold
    linkageType: ''
    returnType: int
    signature: int driver_method_remove_match(Peer *peer, const char *path, CDVar
      *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: peer_registry_find_peer
      Src: /src/dbus-broker/src/bus/driver.c:1615,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:1617,1
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/src/bus/driver.c:1619,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1620,1
    - Dst: driver_write_reply_header
      Src: /src/dbus-broker/src/bus/driver.c:1621,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1622,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1624,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1626,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - bus
    - sender_id
    - reply_serial
    argTypes:
    - Bus*
    - uint64_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1630
      start: 1611
    functionDepth: 8
    functionLinenumber: 1611
    functionLinenumberEnd: 1630
    functionName: driver_reload_config_completed
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 1
    functionsReached:
    - c_dvar_begin_write
    - driver_write_reply_header
    - driver_send_reply
    - _c_cleanup_
    - peer_registry_find_peer
    - error_trace
    - c_dvar_write
    linkageType: ''
    returnType: int
    signature: int driver_reload_config_completed(Bus *bus, uint64_t sender_id, uint32_t
      reply_serial)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: peer_registry_find_peer
      Src: /src/dbus-broker/src/bus/driver.c:1636,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:1638,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1640,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - bus
    - sender_id
    - reply_serial
    argTypes:
    - Bus*
    - uint64_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1644
      start: 1632
    functionDepth: 7
    functionLinenumber: 1632
    functionLinenumberEnd: 1644
    functionName: driver_reload_config_invalid
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 1
    functionsReached:
    - peer_registry_find_peer
    - error_trace
    - driver_send_error
    linkageType: ''
    returnType: int
    signature: int driver_reload_config_invalid(Bus *bus, uint64_t sender_id, uint32_t
      reply_serial)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1650,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1652,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1654,1
    - Dst: broker_reload_config
      Src: /src/dbus-broker/src/bus/driver.c:1656,1
    - Dst: BROKER
      Src: /src/dbus-broker/src/bus/driver.c:1656,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:1661,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1665
      start: 1646
    functionDepth: 8
    functionLinenumber: 1646
    functionLinenumberEnd: 1665
    functionName: driver_method_reload_config
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - error_fold
    - c_dvar_read
    - broker_reload_config
    - error_trace
    - driver_end_read
    - BROKER
    linkageType: ''
    returnType: int
    signature: int driver_method_reload_config(Peer *peer, const char *path, CDVar
      *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1672,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1674,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1676,1
    - Dst: string_to_hex
      Src: /src/dbus-broker/src/bus/driver.c:1679,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1680,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1682,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1684,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1687
      start: 1667
    functionDepth: 8
    functionLinenumber: 1667
    functionLinenumberEnd: 1687
    functionName: driver_method_get_id
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_read
    - driver_send_reply
    - error_trace
    - c_dvar_write
    - driver_end_read
    - string_to_hex
    linkageType: ''
    returnType: int
    signature: int driver_method_get_id(Peer *peer, const char *path, CDVar *in_v,
      uint32_t serial, CDVar *out_v)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1859,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1861,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1863,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:1872,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1873,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:1874,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1875,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:1876,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1877,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:1878,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1879,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1881,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1883,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1885,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1888
      start: 1689
    functionDepth: 8
    functionLinenumber: 1689
    functionLinenumberEnd: 1888
    functionName: driver_method_introspect
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_read
    - driver_send_reply
    - error_trace
    - c_dvar_write
    - strcmp
    - driver_end_read
    linkageType: ''
    returnType: int
    signature: int driver_method_introspect(Peer *peer, const char *path, CDVar *in_v,
      uint32_t serial, CDVar *out_v)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: peer_is_privileged
      Src: /src/dbus-broker/src/bus/driver.c:1896,1
    - Dst: bus_apparmor_check_eavesdrop
      Src: /src/dbus-broker/src/bus/driver.c:1899,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:1903,1
    - Dst: match_owner_init
      Src: /src/dbus-broker/src/bus/driver.c:1906,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1908,1
    - Dst: c_dvar_more
      Src: /src/dbus-broker/src/bus/driver.c:1915,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1916,1
    - Dst: match_owner_ref_rule
      Src: /src/dbus-broker/src/bus/driver.c:1930,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:1932,1
    - Dst: c_dvar_more
      Src: /src/dbus-broker/src/bus/driver.c:1935,1
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1936,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1939,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1941,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1951,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1953,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1955,1
    - Dst: driver_goodbye
      Src: /src/dbus-broker/src/bus/driver.c:1961,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1963,1
    - Dst: peer_become_monitor
      Src: /src/dbus-broker/src/bus/driver.c:1967,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:1969,1
    - Dst: match_owner_deinit
      Src: /src/dbus-broker/src/bus/driver.c:1973,1
    - Dst: match_rule_user_unref
      Src: /src/dbus-broker/src/bus/driver.c:1979,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/driver.c:1979,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 59
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1982
      start: 1890
    functionDepth: 8
    functionLinenumber: 1890
    functionLinenumberEnd: 1982
    functionName: driver_method_become_monitor
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - match_owner_ref_rule
    - peer_is_privileged
    - match_owner_deinit
    - match_owner_init
    - c_dvar_read
    - bus_apparmor_check_eavesdrop
    - driver_send_reply
    - driver_goodbye
    - peer_become_monitor
    - error_trace
    - c_dvar_write
    - c_container_of
    - c_dvar_more
    - match_rule_user_unref
    - driver_end_read
    - error_fold
    linkageType: ''
    returnType: int
    signature: int driver_method_become_monitor(Peer *peer, const char *path, CDVar
      *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:1987,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:1989,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1991,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:1993,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:1995,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:1997,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2000
      start: 1984
    functionDepth: 8
    functionLinenumber: 1984
    functionLinenumberEnd: 2000
    functionName: driver_method_ping
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_read
    - driver_send_reply
    - error_trace
    - c_dvar_write
    - driver_end_read
    linkageType: ''
    returnType: int
    signature: int driver_method_ping(Peer *peer, const char *path, CDVar *in_v, uint32_t
      serial, CDVar *out_v)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:2006,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:2008,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2010,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2013,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:2015,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2017,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2020
      start: 2002
    functionDepth: 8
    functionLinenumber: 2002
    functionLinenumberEnd: 2020
    functionName: driver_method_get_machine_id
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_read
    - driver_send_reply
    - error_trace
    - c_dvar_write
    - driver_end_read
    linkageType: ''
    returnType: int
    signature: int driver_method_get_machine_id(Peer *peer, const char *path, CDVar
      *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: C_DVAR_T_INIT
      Src: /src/dbus-broker/src/bus/driver.c:2024,1
    - Dst: C_DVAR_T_ARRAY
      Src: /src/dbus-broker/src/bus/driver.c:2025,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2031,1
    - Dst: bus_selinux_is_enabled
      Src: /src/dbus-broker/src/bus/driver.c:2032,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2033,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2034,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - v
    argTypes:
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2035
      start: 2022
    functionDepth: 0
    functionLinenumber: 2022
    functionLinenumberEnd: 2035
    functionName: driver_append_property_features
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - bus_selinux_is_enabled
    - C_DVAR_T_INIT
    - c_dvar_write
    - C_DVAR_T_ARRAY
    linkageType: ''
    returnType: void
    signature: void driver_append_property_features(CDVar *v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C_DVAR_T_INIT
      Src: /src/dbus-broker/src/bus/driver.c:2039,1
    - Dst: C_DVAR_T_ARRAY
      Src: /src/dbus-broker/src/bus/driver.c:2040,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2046,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2047
      start: 2037
    functionDepth: 0
    functionLinenumber: 2037
    functionLinenumberEnd: 2047
    functionName: driver_append_property_interfaces
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - C_DVAR_T_INIT
    - c_dvar_write
    - C_DVAR_T_ARRAY
    linkageType: ''
    returnType: void
    signature: void driver_append_property_interfaces(CDVar *v)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:2054,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:2056,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2058,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:2061,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2064,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:2066,1
    - Dst: driver_append_property_features
      Src: /src/dbus-broker/src/bus/driver.c:2067,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:2068,1
    - Dst: driver_append_property_interfaces
      Src: /src/dbus-broker/src/bus/driver.c:2069,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2072,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:2074,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2076,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2079
      start: 2049
    functionDepth: 8
    functionLinenumber: 2049
    functionLinenumberEnd: 2079
    functionName: driver_method_get
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_read
    - driver_send_reply
    - error_trace
    - c_dvar_write
    - driver_append_property_features
    - strcmp
    - driver_append_property_interfaces
    - driver_end_read
    linkageType: ''
    returnType: int
    signature: int driver_method_get(Peer *peer, const char *path, CDVar *in_v, uint32_t
      serial, CDVar *out_v)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:2085,1
    - Dst: c_dvar_skip
      Src: /src/dbus-broker/src/bus/driver.c:2086,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:2088,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2090,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:2093,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:2096,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:2096,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2100
      start: 2081
    functionDepth: 2
    functionLinenumber: 2081
    functionLinenumberEnd: 2100
    functionName: driver_method_set
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_read
    - error_trace
    - c_dvar_skip
    - strcmp
    - driver_end_read
    linkageType: ''
    returnType: int
    signature: int driver_method_set(Peer *peer, const char *path, CDVar *in_v, uint32_t
      serial, CDVar *out_v)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:2107,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:2109,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2111,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:2114,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2118,1
    - Dst: driver_append_property_features
      Src: /src/dbus-broker/src/bus/driver.c:2119,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2120,1
    - Dst: driver_append_property_interfaces
      Src: /src/dbus-broker/src/bus/driver.c:2121,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2122,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:2124,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2126,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2129
      start: 2102
    functionDepth: 8
    functionLinenumber: 2102
    functionLinenumberEnd: 2129
    functionName: driver_method_get_all
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_read
    - driver_send_reply
    - error_trace
    - c_dvar_write
    - driver_append_property_features
    - strcmp
    - driver_append_property_interfaces
    - driver_end_read
    linkageType: ''
    returnType: int
    signature: int driver_method_get_all(Peer *peer, const char *path, CDVar *in_v,
      uint32_t serial, CDVar *out_v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name_owner_get_stats
      Src: /src/dbus-broker/src/bus/driver.c:2136,1
    - Dst: match_owner_get_stats
      Src: /src/dbus-broker/src/bus/driver.c:2137,1
    - Dst: reply_owner_get_stats
      Src: /src/dbus-broker/src/bus/driver.c:2138,1
    - Dst: connection_get_stats
      Src: /src/dbus-broker/src/bus/driver.c:2139,1
    - Dst: name_registry_get_activation_stats_for
      Src: /src/dbus-broker/src/bus/driver.c:2141,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - v
    - peer
    argTypes:
    - CDVar*
    - Peer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2166
      start: 2131
    functionDepth: 2
    functionLinenumber: 2131
    functionLinenumberEnd: 2166
    functionName: driver_append_peer_accounting_stats
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - match_owner_get_stats
    - name_registry_get_activation_stats_for
    - c_dvar_write
    - connection_get_stats
    - name_owner_get_stats
    - reply_owner_get_stats
    linkageType: ''
    returnType: void
    signature: void driver_append_peer_accounting_stats(CDVar *v, Peer *peer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: C_DVAR_T_INIT
      Src: /src/dbus-broker/src/bus/driver.c:2170,1
    - Dst: C_DVAR_T_ARRAY
      Src: /src/dbus-broker/src/bus/driver.c:2171,1
    - Dst: C_DVAR_T_TUPLE3
      Src: /src/dbus-broker/src/bus/driver.c:2172,1
    - Dst: C_DVAR_T_ARRAY
      Src: /src/dbus-broker/src/bus/driver.c:2174,1
    - Dst: C_DVAR_T_PAIR
      Src: /src/dbus-broker/src/bus/driver.c:2175,1
    - Dst: C_DVAR_T_ARRAY
      Src: /src/dbus-broker/src/bus/driver.c:2180,1
    - Dst: C_DVAR_T_PAIR
      Src: /src/dbus-broker/src/bus/driver.c:2181,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2192,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/driver.c:2194,1
    - Dst: peer_is_registered
      Src: /src/dbus-broker/src/bus/driver.c:2197,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2200,1
    - Dst: driver_dvar_write_unique_name
      Src: /src/dbus-broker/src/bus/driver.c:2201,1
    - Dst: driver_fetch_credentials
      Src: /src/dbus-broker/src/bus/driver.c:2202,1
    - Dst: driver_append_credentials
      Src: /src/dbus-broker/src/bus/driver.c:2203,1
    - Dst: driver_append_peer_accounting_stats
      Src: /src/dbus-broker/src/bus/driver.c:2204,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2205,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2208,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - v
    - bus
    argTypes:
    - CDVar*
    - Bus*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2209
      start: 2168
    functionDepth: 3
    functionLinenumber: 2168
    functionLinenumberEnd: 2209
    functionName: driver_append_peer_accounting
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - driver_append_peer_accounting_stats
    - C_DVAR_T_TUPLE3
    - driver_append_credentials
    - c_rbtree_for_each_entry
    - driver_dvar_write_unique_name
    - c_dvar_write
    - C_DVAR_T_PAIR
    - peer_is_registered
    - driver_fetch_credentials
    - C_DVAR_T_INIT
    - C_DVAR_T_ARRAY
    linkageType: ''
    returnType: void
    signature: void driver_append_peer_accounting(CDVar *v, Bus *bus)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C_DVAR_T_INIT
      Src: /src/dbus-broker/src/bus/driver.c:2213,1
    - Dst: C_DVAR_T_ARRAY
      Src: /src/dbus-broker/src/bus/driver.c:2214,1
    - Dst: C_DVAR_T_TUPLE3
      Src: /src/dbus-broker/src/bus/driver.c:2215,1
    - Dst: C_DVAR_T_ARRAY
      Src: /src/dbus-broker/src/bus/driver.c:2217,1
    - Dst: C_DVAR_T_TUPLE3
      Src: /src/dbus-broker/src/bus/driver.c:2218,1
    - Dst: C_DVAR_T_ARRAY
      Src: /src/dbus-broker/src/bus/driver.c:2224,1
    - Dst: C_DVAR_T_PAIR
      Src: /src/dbus-broker/src/bus/driver.c:2225,1
    - Dst: C_DVAR_T_ARRAY
      Src: /src/dbus-broker/src/bus/driver.c:2227,1
    - Dst: C_DVAR_T_PAIR
      Src: /src/dbus-broker/src/bus/driver.c:2228,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/driver.c:2242,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2244,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/driver.c:2246,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2247,1
    - Dst: c_rbtree_for_each_entry
      Src: /src/dbus-broker/src/bus/driver.c:2258,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2259,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2271,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - v
    - bus
    argTypes:
    - CDVar*
    - Bus*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2275
      start: 2211
    functionDepth: 0
    functionLinenumber: 2211
    functionLinenumberEnd: 2275
    functionName: driver_append_user_accounting
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - C_DVAR_T_TUPLE3
    - c_rbtree_for_each_entry
    - C_DVAR_T_PAIR
    - c_dvar_write
    - c_assert
    - C_DVAR_T_INIT
    - C_DVAR_T_ARRAY
    linkageType: ''
    returnType: void
    signature: void driver_append_user_accounting(CDVar *v, Bus *bus)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_dvar_read
      Src: /src/dbus-broker/src/bus/driver.c:2281,1
    - Dst: driver_end_read
      Src: /src/dbus-broker/src/bus/driver.c:2283,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2285,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2287,1
    - Dst: driver_append_peer_accounting
      Src: /src/dbus-broker/src/bus/driver.c:2288,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2289,1
    - Dst: driver_append_user_accounting
      Src: /src/dbus-broker/src/bus/driver.c:2290,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2291,1
    - Dst: util_t2u_saturating
      Src: /src/dbus-broker/src/bus/driver.c:2303,1
    - Dst: util_z2u_saturating
      Src: /src/dbus-broker/src/bus/driver.c:2305,1
    - Dst: util_z2u_saturating
      Src: /src/dbus-broker/src/bus/driver.c:2307,1
    - Dst: util_z2u_saturating
      Src: /src/dbus-broker/src/bus/driver.c:2309,1
    - Dst: util_z2u_saturating
      Src: /src/dbus-broker/src/bus/driver.c:2311,1
    - Dst: util_z2u_saturating
      Src: /src/dbus-broker/src/bus/driver.c:2313,1
    - Dst: util_z2u_saturating
      Src: /src/dbus-broker/src/bus/driver.c:2315,1
    - Dst: util_z2u_saturating
      Src: /src/dbus-broker/src/bus/driver.c:2317,1
    - Dst: util_z2u_saturating
      Src: /src/dbus-broker/src/bus/driver.c:2319,1
    - Dst: driver_send_reply
      Src: /src/dbus-broker/src/bus/driver.c:2322,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2324,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2327
      start: 2277
    functionDepth: 8
    functionLinenumber: 2277
    functionLinenumberEnd: 2327
    functionName: driver_method_get_stats
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - driver_append_peer_accounting
    - driver_append_user_accounting
    - c_dvar_read
    - driver_send_reply
    - util_z2u_saturating
    - util_t2u_saturating
    - error_trace
    - c_dvar_write
    - driver_end_read
    linkageType: ''
    returnType: int
    signature: int driver_method_get_stats(Peer *peer, const char *path, CDVar *in_v,
      uint32_t serial, CDVar *out_v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2331
      start: 2329
    functionDepth: 0
    functionLinenumber: 2329
    functionLinenumberEnd: 2331
    functionName: driver_method_get_connection_stats
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int driver_method_get_connection_stats(Peer *peer, const char *path,
      CDVar *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - peer
    - path
    - in_v
    - serial
    - out_v
    argTypes:
    - Peer*
    - char*
    - CDVar*
    - uint32_t
    - CDVar*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2335
      start: 2333
    functionDepth: 0
    functionLinenumber: 2333
    functionLinenumberEnd: 2335
    functionName: driver_method_get_all_match_rules
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int driver_method_get_all_match_rules(Peer *peer, const char *path,
      CDVar *in_v, uint32_t serial, CDVar *out_v)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:2338,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:2346,1
    - Dst: driver_dvar_verify_signature_in
      Src: /src/dbus-broker/src/bus/driver.c:2349,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2351,1
    - Dst: c_dvar_begin_read
      Src: /src/dbus-broker/src/bus/driver.c:2353,1
    - Dst: c_dvar_begin_write
      Src: /src/dbus-broker/src/bus/driver.c:2354,1
    - Dst: c_dvar_write
      Src: /src/dbus-broker/src/bus/driver.c:2367,1
    - Dst: driver_write_reply_header
      Src: /src/dbus-broker/src/bus/driver.c:2369,1
    - Dst: DriverMethod*::fn
      Src: /src/dbus-broker/src/bus/driver.c:2371,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2373,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 6
    argNames:
    - method
    - peer
    - path
    - serial
    - signature_in
    - message_in
    argTypes:
    - DriverMethod*
    - Peer*
    - char*
    - uint32_t
    - char*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2376
      start: 2337
    functionDepth: 3
    functionLinenumber: 2337
    functionLinenumberEnd: 2376
    functionName: driver_handle_method
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - c_dvar_begin_write
    - driver_write_reply_header
    - _c_cleanup_
    - DriverMethod*::fn
    - driver_dvar_verify_signature_in
    - error_trace
    - c_dvar_write
    - c_dvar_begin_read
    - strcmp
    linkageType: ''
    returnType: int
    signature: int driver_handle_method(const DriverMethod *method, Peer *peer, const
      char *path, uint32_t serial, const char *signature_in, Message *message_in)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:2433,1
    - Dst: _c_likely_
      Src: /src/dbus-broker/src/bus/driver.c:2436,1
    - Dst: peer_is_registered
      Src: /src/dbus-broker/src/bus/driver.c:2436,1
    - Dst: driver_handle_method
      Src: /src/dbus-broker/src/bus/driver.c:2437,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 7
    argNames:
    - peer
    - methods
    - serial
    - method
    - path
    - signature
    - message
    argTypes:
    - Peer*
    - DriverMethod*
    - uint32_t
    - char*
    - char*
    - char*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2441
      start: 2431
    functionDepth: 4
    functionLinenumber: 2431
    functionLinenumberEnd: 2441
    functionName: driver_dispatch_method
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - strcmp
    - _c_likely_
    - driver_handle_method
    - peer_is_registered
    linkageType: ''
    returnType: int
    signature: int driver_dispatch_method(Peer *peer, const DriverMethod *methods,
      uint32_t serial, const char *method, const char *path, const char *signature,
      Message *message)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - err
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2452
      start: 2443
    functionDepth: 0
    functionLinenumber: 2443
    functionLinenumberEnd: 2452
    functionName: driver_map_denied_error
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int driver_map_denied_error(int err)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: policy_snapshot_check_send
      Src: /src/dbus-broker/src/bus/driver.c:2469,1
    - Dst: NAME_SET_INIT_FROM_OWNER
      Src: /src/dbus-broker/src/bus/driver.c:2474,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/bus/driver.c:2476,1
    - Dst: bus_log_append_policy_send
      Src: /src/dbus-broker/src/bus/driver.c:2477,1
    - Dst: driver_map_denied_error
      Src: /src/dbus-broker/src/bus/driver.c:2478,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/driver.c:2480,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:2483,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:2488,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/bus/driver.c:2492,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:2493,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2496,1
    - Dst: driver_dispatch_method
      Src: /src/dbus-broker/src/bus/driver.c:2496,1
    - Dst: C_ARRAY_SIZE
      Src: /src/dbus-broker/src/bus/driver.c:2501,1
    - Dst: driver_dispatch_method
      Src: /src/dbus-broker/src/bus/driver.c:2502,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2506,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 31
    argCount: 7
    argNames:
    - peer
    - serial
    - interface
    - member
    - path
    - signature
    - message
    argTypes:
    - Peer*
    - uint32_t
    - char*
    - char*
    - char*
    - char*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2511
      start: 2454
    functionDepth: 5
    functionLinenumber: 2454
    functionLinenumberEnd: 2511
    functionName: driver_dispatch_interface
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - driver_map_denied_error
    - driver_dispatch_method
    - log_commitf
    - log_append_here
    - policy_snapshot_check_send
    - NAME_SET_INIT_FROM_OWNER
    - bus_log_append_policy_send
    - error_trace
    - strcmp
    - C_ARRAY_SIZE
    - error_fold
    linkageType: ''
    returnType: int
    signature: int driver_dispatch_interface(Peer *peer, uint32_t serial, const char
      *interface, const char *member, const char *path, const char *signature, Message
      *message)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: peer_flush_matches
      Src: /src/dbus-broker/src/bus/driver.c:2518,1
    - Dst: c_list_for_each_entry_safe
      Src: /src/dbus-broker/src/bus/driver.c:2520,1
    - Dst: reply_slot_free
      Src: /src/dbus-broker/src/bus/driver.c:2521,1
    - Dst: match_registry_flush
      Src: /src/dbus-broker/src/bus/driver.c:2523,1
    - Dst: c_rbtree_for_each_entry_safe_postorder_unlink
      Src: /src/dbus-broker/src/bus/driver.c:2525,1
    - Dst: name_change_init
      Src: /src/dbus-broker/src/bus/driver.c:2528,1
    - Dst: peer_release_name_ownership
      Src: /src/dbus-broker/src/bus/driver.c:2529,1
    - Dst: driver_name_owner_changed
      Src: /src/dbus-broker/src/bus/driver.c:2531,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/driver.c:2534,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/driver.c:2535,1
    - Dst: name_change_deinit
      Src: /src/dbus-broker/src/bus/driver.c:2538,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:2540,1
    - Dst: peer_is_registered
      Src: /src/dbus-broker/src/bus/driver.c:2543,1
    - Dst: driver_name_owner_changed
      Src: /src/dbus-broker/src/bus/driver.c:2545,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2547,1
    - Dst: peer_unregister
      Src: /src/dbus-broker/src/bus/driver.c:2549,1
    - Dst: peer_is_monitor
      Src: /src/dbus-broker/src/bus/driver.c:2550,1
    - Dst: peer_stop_monitor
      Src: /src/dbus-broker/src/bus/driver.c:2551,1
    - Dst: match_registry_flush
      Src: /src/dbus-broker/src/bus/driver.c:2554,1
    - Dst: c_rbtree_for_each_entry_safe_postorder_unlink
      Src: /src/dbus-broker/src/bus/driver.c:2556,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/driver.c:2557,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:2560,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2562,1
    - Dst: reply_slot_free
      Src: /src/dbus-broker/src/bus/driver.c:2565,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 2
    argNames:
    - peer
    - silent
    argTypes:
    - Peer*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2569
      start: 2513
    functionDepth: 10
    functionLinenumber: 2513
    functionLinenumberEnd: 2569
    functionName: driver_goodbye
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 3
    functionsReached:
    - match_registry_flush
    - c_list_for_each_entry_safe
    - error_fold
    - peer_unregister
    - peer_stop_monitor
    - peer_is_monitor
    - c_rbtree_for_each_entry_safe_postorder_unlink
    - name_change_deinit
    - peer_release_name_ownership
    - peer_flush_matches
    - c_container_of
    - error_trace
    - peer_is_registered
    - reply_slot_free
    - driver_name_owner_changed
    - name_change_init
    - driver_send_error
    linkageType: ''
    returnType: int
    signature: int driver_goodbye(Peer *peer, bool silent)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: NAME_SET_INIT_FROM_OWNER
      Src: /src/dbus-broker/src/bus/driver.c:2572,1
    - Dst: bus_find_peer_by_name
      Src: /src/dbus-broker/src/bus/driver.c:2577,1
    - Dst: activation_queue_message
      Src: /src/dbus-broker/src/bus/driver.c:2584,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:2589,1
    - Dst: peer_queue_unicast
      Src: /src/dbus-broker/src/bus/driver.c:2595,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:2608,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 3
    argNames:
    - sender
    - destination
    - message
    argTypes:
    - Peer*
    - char*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2612
      start: 2571
    functionDepth: 7
    functionLinenumber: 2571
    functionLinenumberEnd: 2612
    functionName: driver_forward_unicast
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - bus_find_peer_by_name
    - activation_queue_message
    - NAME_SET_INIT_FROM_OWNER
    - peer_queue_unicast
    - error_fold
    linkageType: ''
    returnType: int
    signature: int driver_forward_unicast(Peer *sender, const char *destination, Message
      *message)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/driver.c:2615,1
    - Dst: C_LIST_INIT
      Src: /src/dbus-broker/src/bus/driver.c:2615,1
    - Dst: NAME_SET_INIT_FROM_OWNER
      Src: /src/dbus-broker/src/bus/driver.c:2616,1
    - Dst: bus_get_broadcast_destinations
      Src: /src/dbus-broker/src/bus/driver.c:2620,1
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/bus/driver.c:2622,1
    - Dst: c_container_of
      Src: /src/dbus-broker/src/bus/driver.c:2623,1
    - Dst: NAME_SET_INIT_FROM_OWNER
      Src: /src/dbus-broker/src/bus/driver.c:2624,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/bus/driver.c:2626,1
    - Dst: policy_snapshot_check_send
      Src: /src/dbus-broker/src/bus/driver.c:2628,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:2644,1
    - Dst: policy_snapshot_check_receive
      Src: /src/dbus-broker/src/bus/driver.c:2647,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:2663,1
    - Dst: connection_queue
      Src: /src/dbus-broker/src/bus/driver.c:2666,1
    - Dst: connection_shutdown
      Src: /src/dbus-broker/src/bus/driver.c:2669,1
    - Dst: log_append_here
      Src: /src/dbus-broker/src/bus/driver.c:2671,1
    - Dst: bus_log_append_transaction
      Src: /src/dbus-broker/src/bus/driver.c:2672,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/driver.c:2676,1
    - Dst: log_commitf
      Src: /src/dbus-broker/src/bus/driver.c:2678,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:2680,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:2682,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 34
    argCount: 2
    argNames:
    - sender
    - message
    argTypes:
    - Peer*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2688
      start: 2614
    functionDepth: 4
    functionLinenumber: 2614
    functionLinenumberEnd: 2688
    functionName: driver_forward_broadcast
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - C_LIST_INIT
    - bus_log_append_transaction
    - log_commitf
    - bus_get_broadcast_destinations
    - c_list_first_entry
    - policy_snapshot_check_send
    - log_append_here
    - c_list_unlink
    - connection_queue
    - _c_cleanup_
    - policy_snapshot_check_receive
    - NAME_SET_INIT_FROM_OWNER
    - c_container_of
    - connection_shutdown
    - error_fold
    linkageType: ''
    returnType: int
    signature: int driver_forward_broadcast(Peer *sender, Message *message)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: driver_monitor
      Src: /src/dbus-broker/src/bus/driver.c:2693,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2695,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/bus/driver.c:2697,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/driver.c:2704,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2707,1
    - Dst: driver_dispatch_method
      Src: /src/dbus-broker/src/bus/driver.c:2707,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:2709,1
    - Dst: string_equal
      Src: /src/dbus-broker/src/bus/driver.c:2716,1
    - Dst: driver_dispatch_interface
      Src: /src/dbus-broker/src/bus/driver.c:2717,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:2718,1
    - Dst: _c_unlikely_
      Src: /src/dbus-broker/src/bus/driver.c:2725,1
    - Dst: peer_is_registered
      Src: /src/dbus-broker/src/bus/driver.c:2725,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2730,1
    - Dst: peer_is_registered
      Src: /src/dbus-broker/src/bus/driver.c:2736,1
    - Dst: driver_forward_broadcast
      Src: /src/dbus-broker/src/bus/driver.c:2741,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2743,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2754,1
    - Dst: driver_forward_unicast
      Src: /src/dbus-broker/src/bus/driver.c:2754,1
    - Dst: peer_queue_reply
      Src: /src/dbus-broker/src/bus/driver.c:2759,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/driver.c:2766,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 43
    argCount: 2
    argNames:
    - peer
    - message
    argTypes:
    - Peer*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2770
      start: 2690
    functionDepth: 8
    functionLinenumber: 2690
    functionLinenumberEnd: 2770
    functionName: driver_dispatch_internal
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 0
    functionsReached:
    - driver_dispatch_method
    - peer_queue_reply
    - driver_monitor
    - message_read_serial
    - _c_unlikely_
    - driver_dispatch_interface
    - error_trace
    - peer_is_registered
    - driver_forward_broadcast
    - strcmp
    - driver_forward_unicast
    - error_fold
    - string_equal
    linkageType: ''
    returnType: int
    signature: int driver_dispatch_internal(Peer *peer, Message *message)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: peer_is_monitor
      Src: /src/dbus-broker/src/bus/driver.c:2775,1
    - Dst: driver_dispatch_internal
      Src: /src/dbus-broker/src/bus/driver.c:2778,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:2785,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:2785,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:2785,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:2797,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:2797,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:2797,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:2800,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:2800,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:2800,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:2803,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:2803,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:2803,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:2806,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:2806,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:2806,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:2809,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:2809,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:2809,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:2816,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:2816,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:2816,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:2820,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:2820,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:2820,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:2826,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:2826,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:2826,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:2829,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:2829,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:2829,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:2832,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:2832,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:2832,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:2835,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:2835,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:2835,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:2838,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:2838,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:2838,1
    - Dst: driver_send_error
      Src: /src/dbus-broker/src/bus/driver.c:2841,1
    - Dst: message_read_serial
      Src: /src/dbus-broker/src/bus/driver.c:2841,1
    - Dst: driver_error_to_string
      Src: /src/dbus-broker/src/bus/driver.c:2841,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/driver.c:2847,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 72
    argCount: 2
    argNames:
    - peer
    - message
    argTypes:
    - Peer*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2848
      start: 2772
    functionDepth: 9
    functionLinenumber: 2772
    functionLinenumberEnd: 2848
    functionName: driver_dispatch
    functionSourceFile: /src/dbus-broker/src/bus/driver.c
    functionUses: 1
    functionsReached:
    - message_read_serial
    - peer_is_monitor
    - error_trace
    - driver_dispatch_internal
    - driver_error_to_string
    - driver_send_error
    linkageType: ''
    returnType: int
    signature: int driver_dispatch(Peer *peer, Message *message)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/bus/activation.c:22,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/bus/activation.c:23,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/activation.c:24,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - request
    argTypes:
    - ActivationRequest*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 18
    functionDepth: 4
    functionLinenumber: 18
    functionLinenumberEnd: 27
    functionName: activation_request_free
    functionSourceFile: /src/dbus-broker/src/bus/activation.c
    functionUses: 2
    functionsReached:
    - user_charge_deinit
    - c_list_unlink
    - free
    linkageType: ''
    returnType: ActivationRequest
    signature: ActivationRequest *activation_request_free(ActivationRequest *request)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: name_snapshot_free
      Src: /src/dbus-broker/src/bus/activation.c:35,1
    - Dst: policy_snapshot_free
      Src: /src/dbus-broker/src/bus/activation.c:36,1
    - Dst: message_unref
      Src: /src/dbus-broker/src/bus/activation.c:37,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/bus/activation.c:38,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/bus/activation.c:39,1
    - Dst: user_charge_deinit
      Src: /src/dbus-broker/src/bus/activation.c:40,1
    - Dst: user_unref
      Src: /src/dbus-broker/src/bus/activation.c:41,1
    - Dst: free
      Src: /src/dbus-broker/src/bus/activation.c:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - message
    argTypes:
    - ActivationMessage*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 31
    functionDepth: 4
    functionLinenumber: 31
    functionLinenumberEnd: 45
    functionName: activation_message_free
    functionSourceFile: /src/dbus-broker/src/bus/activation.c
    functionUses: 2
    functionsReached:
    - policy_snapshot_free
    - c_list_unlink
    - name_snapshot_free
    - free
    - message_unref
    - user_charge_deinit
    - user_unref
    linkageType: ''
    returnType: ActivationMessage
    signature: ActivationMessage *activation_message_free(ActivationMessage *message)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/activation.c:53,1
    - Dst: ACTIVATION_NULL
      Src: /src/dbus-broker/src/bus/activation.c:58,1
    - Dst: name_ref
      Src: /src/dbus-broker/src/bus/activation.c:60,1
    - Dst: user_ref
      Src: /src/dbus-broker/src/bus/activation.c:61,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - a
    - bus
    - name
    - user
    argTypes:
    - Activation*
    - Bus*
    - Name*
    - User*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 52
    functionDepth: 3
    functionLinenumber: 52
    functionLinenumberEnd: 66
    functionName: activation_init
    functionSourceFile: /src/dbus-broker/src/bus/activation.c
    functionUses: 1
    functionsReached:
    - _c_cleanup_
    - ACTIVATION_NULL
    - name_ref
    - user_ref
    linkageType: ''
    returnType: int
    signature: int activation_init(Activation *a, Bus *bus, Name *name, User *user)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/bus/activation.c:75,1
    - Dst: activation_message_free
      Src: /src/dbus-broker/src/bus/activation.c:76,1
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/bus/activation.c:78,1
    - Dst: activation_request_free
      Src: /src/dbus-broker/src/bus/activation.c:79,1
    - Dst: user_unref
      Src: /src/dbus-broker/src/bus/activation.c:81,1
    - Dst: name_unref
      Src: /src/dbus-broker/src/bus/activation.c:85,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - activation
    argTypes:
    - Activation*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 71
    functionDepth: 5
    functionLinenumber: 71
    functionLinenumberEnd: 87
    functionName: activation_deinit
    functionSourceFile: /src/dbus-broker/src/bus/activation.c
    functionUses: 1
    functionsReached:
    - activation_request_free
    - c_list_first_entry
    - activation_message_free
    - name_unref
    - user_unref
    linkageType: ''
    returnType: void
    signature: void activation_deinit(Activation *activation)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: c_list_for_each_entry
      Src: /src/dbus-broker/src/bus/activation.c:100,1
    - Dst: c_list_for_each_entry
      Src: /src/dbus-broker/src/bus/activation.c:107,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 4
    argNames:
    - activation
    - owner_id
    - n_bytesp
    - n_fdsp
    argTypes:
    - Activation*
    - uint64_t
    - unsigned int*
    - unsigned int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 113
    functionName: activation_get_stats_for
    functionSourceFile: /src/dbus-broker/src/bus/activation.c
    functionUses: 1
    functionsReached:
    - c_list_for_each_entry
    linkageType: ''
    returnType: void
    signature: "void activation_get_stats_for(Activation *activation,\n                              uint64_t
      owner_id,\n                              unsigned int *n_bytesp,\n                              unsigned
      int *n_fdsp)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: controller_name_activate
      Src: /src/dbus-broker/src/bus/activation.c:121,1
    - Dst: CONTROLLER_NAME
      Src: /src/dbus-broker/src/bus/activation.c:121,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/activation.c:124,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - activation
    argTypes:
    - Activation*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 115
    functionDepth: 2
    functionLinenumber: 115
    functionLinenumberEnd: 128
    functionName: activation_request
    functionSourceFile: /src/dbus-broker/src/bus/activation.c
    functionUses: 0
    functionsReached:
    - CONTROLLER_NAME
    - error_fold
    - controller_name_activate
    linkageType: ''
    returnType: int
    signature: int activation_request(Activation *activation)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/activation.c:135,1
    - Dst: activation_request
      Src: /src/dbus-broker/src/bus/activation.c:138,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/activation.c:140,1
    - Dst: calloc
      Src: /src/dbus-broker/src/bus/activation.c:142,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/activation.c:144,1
    - Dst: user_ref
      Src: /src/dbus-broker/src/bus/activation.c:146,1
    - Dst: C_LIST_INIT
      Src: /src/dbus-broker/src/bus/activation.c:149,1
    - Dst: message_ref
      Src: /src/dbus-broker/src/bus/activation.c:150,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/bus/activation.c:152,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/bus/activation.c:154,1
    - Dst: fdlist_count
      Src: /src/dbus-broker/src/bus/activation.c:155,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/activation.c:157,1
    - Dst: policy_snapshot_dup
      Src: /src/dbus-broker/src/bus/activation.c:159,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/activation.c:161,1
    - Dst: name_snapshot_new
      Src: /src/dbus-broker/src/bus/activation.c:163,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/activation.c:165,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/bus/activation.c:167,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 5
    argNames:
    - activation
    - user
    - names
    - policy
    - m
    argTypes:
    - Activation*
    - User*
    - NameOwner*
    - PolicySnapshot*
    - Message*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 130
    functionDepth: 5
    functionLinenumber: 130
    functionLinenumberEnd: 170
    functionName: activation_queue_message
    functionSourceFile: /src/dbus-broker/src/bus/activation.c
    functionUses: 1
    functionsReached:
    - C_LIST_INIT
    - calloc
    - fdlist_count
    - error_fold
    - activation_request
    - policy_snapshot_dup
    - c_list_link_tail
    - error_origin
    - _c_cleanup_
    - error_trace
    - message_ref
    - name_snapshot_new
    - user_charge
    - user_ref
    linkageType: ''
    returnType: int
    signature: "int activation_queue_message(Activation *activation,\n                             User
      *user,\n                             NameOwner *names,\n                             PolicySnapshot
      *policy,\n                             Message *m)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/activation.c:173,1
    - Dst: activation_request
      Src: /src/dbus-broker/src/bus/activation.c:176,1
    - Dst: error_trace
      Src: /src/dbus-broker/src/bus/activation.c:178,1
    - Dst: calloc
      Src: /src/dbus-broker/src/bus/activation.c:184,1
    - Dst: error_origin
      Src: /src/dbus-broker/src/bus/activation.c:186,1
    - Dst: C_LIST_INIT
      Src: /src/dbus-broker/src/bus/activation.c:189,1
    - Dst: user_charge
      Src: /src/dbus-broker/src/bus/activation.c:193,1
    - Dst: error_fold
      Src: /src/dbus-broker/src/bus/activation.c:195,1
    - Dst: c_list_link_tail
      Src: /src/dbus-broker/src/bus/activation.c:197,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 4
    argNames:
    - activation
    - user
    - sender_id
    - serial
    argTypes:
    - Activation*
    - User*
    - uint64_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 172
    functionDepth: 5
    functionLinenumber: 172
    functionLinenumberEnd: 200
    functionName: activation_queue_request
    functionSourceFile: /src/dbus-broker/src/bus/activation.c
    functionUses: 1
    functionsReached:
    - C_LIST_INIT
    - calloc
    - c_list_link_tail
    - activation_request
    - error_origin
    - _c_cleanup_
    - error_trace
    - user_charge
    - error_fold
    linkageType: ''
    returnType: int
    signature: int activation_queue_request(Activation *activation, User *user, uint64_t
      sender_id, uint32_t serial)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/test-match.c:17,1
    - Dst: match_owner_ref_rule
      Src: /src/dbus-broker/src/bus/test-match.c:20,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:21,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:22,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/test-match.c:22,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - owner
    - match
    - arg0
    argTypes:
    - MatchOwner*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 14
    functionDepth: 7
    functionLinenumber: 14
    functionLinenumberEnd: 23
    functionName: test_arg
    functionSourceFile: /src/dbus-broker/src/bus/test-match.c
    functionUses: 1
    functionsReached:
    - c_assert
    - _c_cleanup_
    - match_owner_ref_rule
    - strcmp
    linkageType: ''
    returnType: void
    signature: "void test_arg(MatchOwner *owner,\n                     const char
      *match,\n                     const char *arg0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_arg
      Src: /src/dbus-broker/src/bus/test-match.c:26,1
    - Dst: test_arg
      Src: /src/dbus-broker/src/bus/test-match.c:27,1
    - Dst: test_arg
      Src: /src/dbus-broker/src/bus/test-match.c:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - owner
    argTypes:
    - MatchOwner*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: test_parse_key
    functionSourceFile: /src/dbus-broker/src/bus/test-match.c
    functionUses: 0
    functionsReached:
    - test_arg
    linkageType: ''
    returnType: void
    signature: void test_parse_key(MatchOwner *owner)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/test-match.c:37,1
    - Dst: match_owner_ref_rule
      Src: /src/dbus-broker/src/bus/test-match.c:40,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:41,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:42,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/test-match.c:42,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:43,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/test-match.c:43,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:44,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/test-match.c:44,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:45,1
    - Dst: strcmp
      Src: /src/dbus-broker/src/bus/test-match.c:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 6
    argNames:
    - owner
    - match
    - arg0
    - arg1
    - arg2
    - arg3
    argTypes:
    - MatchOwner*
    - char*
    - char*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 31
    functionDepth: 7
    functionLinenumber: 31
    functionLinenumberEnd: 46
    functionName: test_args
    functionSourceFile: /src/dbus-broker/src/bus/test-match.c
    functionUses: 1
    functionsReached:
    - c_assert
    - _c_cleanup_
    - match_owner_ref_rule
    - strcmp
    linkageType: ''
    returnType: void
    signature: "void test_args(MatchOwner *owner,\n                      const char
      *match,\n                      const char *arg0,\n                      const
      char *arg1,\n                      const char *arg2,\n                      const
      char *arg3)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_args
      Src: /src/dbus-broker/src/bus/test-match.c:50,1
    - Dst: test_args
      Src: /src/dbus-broker/src/bus/test-match.c:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - owner
    argTypes:
    - MatchOwner*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 62
    functionName: test_parse_value
    functionSourceFile: /src/dbus-broker/src/bus/test-match.c
    functionUses: 0
    functionsReached:
    - test_args
    linkageType: ''
    returnType: void
    signature: void test_parse_value(MatchOwner *owner)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/test-match.c:65,1
    - Dst: match_owner_ref_rule
      Src: /src/dbus-broker/src/bus/test-match.c:68,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - owner
    - match
    argTypes:
    - MatchOwner*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 64
    functionDepth: 7
    functionLinenumber: 64
    functionLinenumberEnd: 72
    functionName: test_validity
    functionSourceFile: /src/dbus-broker/src/bus/test-match.c
    functionUses: 0
    functionsReached:
    - c_assert
    - _c_cleanup_
    - match_owner_ref_rule
    linkageType: ''
    returnType: bool
    signature: bool test_validity(MatchOwner *owner, const char *match)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:75,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:75,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:76,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:76,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:77,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:77,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:78,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - owner
    argTypes:
    - MatchOwner*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 74
    functionDepth: 8
    functionLinenumber: 74
    functionLinenumberEnd: 79
    functionName: test_splitting
    functionSourceFile: /src/dbus-broker/src/bus/test-match.c
    functionUses: 0
    functionsReached:
    - c_assert
    - test_validity
    linkageType: ''
    returnType: void
    signature: void test_splitting(MatchOwner *owner)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:82,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:82,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:83,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - owner
    argTypes:
    - MatchOwner*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 8
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: test_wildcard
    functionSourceFile: /src/dbus-broker/src/bus/test-match.c
    functionUses: 1
    functionsReached:
    - c_assert
    - test_validity
    linkageType: ''
    returnType: void
    signature: void test_wildcard(MatchOwner *owner)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:87,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:87,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:88,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:88,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:89,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:89,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:90,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:90,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:91,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:91,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:92,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:92,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:93,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:93,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:94,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:94,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:95,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:95,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:96,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:96,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:97,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:97,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:98,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:98,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:99,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:99,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:100,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:100,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:101,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:101,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:102,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:102,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:103,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:103,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:104,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:104,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:105,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:105,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:106,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:106,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:107,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:107,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:108,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:108,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:109,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:109,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:110,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:110,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:111,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:111,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:112,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:112,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:113,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:113,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:114,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:114,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:115,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:115,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:116,1
    - Dst: test_validity
      Src: /src/dbus-broker/src/bus/test-match.c:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 31
    argCount: 1
    argNames:
    - owner
    argTypes:
    - MatchOwner*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 86
    functionDepth: 8
    functionLinenumber: 86
    functionLinenumberEnd: 117
    functionName: test_validate_keys
    functionSourceFile: /src/dbus-broker/src/bus/test-match.c
    functionUses: 0
    functionsReached:
    - c_assert
    - test_validity
    linkageType: ''
    returnType: void
    signature: void test_validate_keys(MatchOwner *owner)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/test-match.c:126,1
    - Dst: match_owner_ref_rule
      Src: /src/dbus-broker/src/bus/test-match.c:128,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:129,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/test-match.c:135,1
    - Dst: match_owner_ref_rule
      Src: /src/dbus-broker/src/bus/test-match.c:137,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:138,1
    - Dst: _c_cleanup_
      Src: /src/dbus-broker/src/bus/test-match.c:144,1
    - Dst: match_owner_ref_rule
      Src: /src/dbus-broker/src/bus/test-match.c:146,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 1
    argNames:
    - owner
    argTypes:
    - MatchOwner*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 119
    functionDepth: 7
    functionLinenumber: 119
    functionLinenumberEnd: 149
    functionName: test_eavesdrop
    functionSourceFile: /src/dbus-broker/src/bus/test-match.c
    functionUses: 0
    functionsReached:
    - c_assert
    - _c_cleanup_
    - match_owner_ref_rule
    linkageType: ''
    returnType: void
    signature: void test_eavesdrop(MatchOwner *owner)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C_LIST_INIT
      Src: /src/dbus-broker/src/bus/test-match.c:152,1
    - Dst: match_registry_init
      Src: /src/dbus-broker/src/bus/test-match.c:158,1
    - Dst: match_owner_init
      Src: /src/dbus-broker/src/bus/test-match.c:159,1
    - Dst: match_owner_ref_rule
      Src: /src/dbus-broker/src/bus/test-match.c:161,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:162,1
    - Dst: match_rule_link
      Src: /src/dbus-broker/src/bus/test-match.c:164,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:165,1
    - Dst: match_registry_get_subscribers
      Src: /src/dbus-broker/src/bus/test-match.c:167,1
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/bus/test-match.c:168,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:169,1
    - Dst: c_list_flush
      Src: /src/dbus-broker/src/bus/test-match.c:170,1
    - Dst: match_rule_user_unref
      Src: /src/dbus-broker/src/bus/test-match.c:172,1
    - Dst: match_owner_deinit
      Src: /src/dbus-broker/src/bus/test-match.c:173,1
    - Dst: match_registry_deinit
      Src: /src/dbus-broker/src/bus/test-match.c:174,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - match_string
    - metadata
    argTypes:
    - char*
    - MessageMetadata*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 151
    functionDepth: 8
    functionLinenumber: 151
    functionLinenumberEnd: 177
    functionName: test_match
    functionSourceFile: /src/dbus-broker/src/bus/test-match.c
    functionUses: 0
    functionsReached:
    - C_LIST_INIT
    - match_owner_ref_rule
    - c_list_flush
    - c_list_first_entry
    - match_owner_init
    - match_registry_get_subscribers
    - match_owner_deinit
    - match_registry_deinit
    - match_registry_init
    - match_rule_link
    - c_assert
    - match_rule_user_unref
    linkageType: ''
    returnType: bool
    signature: bool test_match(const char *match_string, MessageMetadata *metadata)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:182,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:182,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:186,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:186,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:188,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:188,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:189,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:189,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:193,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:193,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:194,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:194,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:198,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:198,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:200,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:200,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:201,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:201,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:205,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:205,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:207,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:207,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:208,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:208,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:212,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:212,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:214,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:214,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:215,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:215,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:216,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:216,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:217,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:217,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:221,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:221,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:223,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:223,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:224,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:224,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:225,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:225,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:226,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:226,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:227,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:227,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:228,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:228,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:234,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:234,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:238,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:238,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:239,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:239,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:240,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:240,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:241,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:241,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:242,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:242,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:245,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:245,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:246,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:246,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:247,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:247,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:248,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:248,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:249,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:249,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:252,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:252,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:253,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:253,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:254,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:254,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:255,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:255,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:259,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:259,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:265,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:265,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:266,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:266,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:267,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:267,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:268,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:268,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:269,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:269,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:272,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:272,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:273,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:273,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:274,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:274,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:275,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:275,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:276,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:276,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:279,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:279,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:280,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:280,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:281,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:281,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:282,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:282,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:286,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:286,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:290,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:290,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:291,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:291,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:292,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:292,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:293,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:293,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:294,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:294,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:298,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:298,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:302,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:302,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:303,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:303,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:304,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:304,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:305,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:305,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:306,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:306,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:310,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:310,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:316,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:316,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:317,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:317,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:318,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:318,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:319,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:319,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:320,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:320,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:324,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:324,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:330,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:330,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:331,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:331,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:332,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:332,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:333,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:333,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:334,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:334,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:338,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:338,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:342,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:342,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:343,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:343,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:344,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:344,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:345,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:345,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:346,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:346,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:347,1
    - Dst: test_match
      Src: /src/dbus-broker/src/bus/test-match.c:347,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 139
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 179
    functionDepth: 9
    functionLinenumber: 179
    functionLinenumberEnd: 348
    functionName: test_individual_matches
    functionSourceFile: /src/dbus-broker/src/bus/test-match.c
    functionUses: 0
    functionsReached:
    - c_assert
    - test_match
    linkageType: ''
    returnType: void
    signature: void test_individual_matches(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MATCH_REGISTRY_INIT
      Src: /src/dbus-broker/src/bus/test-match.c:351,1
    - Dst: C_LIST_INIT
      Src: /src/dbus-broker/src/bus/test-match.c:352,1
    - Dst: match_owner_init
      Src: /src/dbus-broker/src/bus/test-match.c:358,1
    - Dst: match_owner_init
      Src: /src/dbus-broker/src/bus/test-match.c:359,1
    - Dst: match_owner_ref_rule
      Src: /src/dbus-broker/src/bus/test-match.c:361,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:362,1
    - Dst: match_rule_link
      Src: /src/dbus-broker/src/bus/test-match.c:364,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:365,1
    - Dst: match_owner_ref_rule
      Src: /src/dbus-broker/src/bus/test-match.c:367,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:368,1
    - Dst: match_rule_link
      Src: /src/dbus-broker/src/bus/test-match.c:370,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:371,1
    - Dst: match_owner_ref_rule
      Src: /src/dbus-broker/src/bus/test-match.c:373,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:374,1
    - Dst: match_rule_link
      Src: /src/dbus-broker/src/bus/test-match.c:376,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:377,1
    - Dst: match_owner_ref_rule
      Src: /src/dbus-broker/src/bus/test-match.c:379,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:380,1
    - Dst: match_rule_link
      Src: /src/dbus-broker/src/bus/test-match.c:382,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:383,1
    - Dst: match_registry_get_subscribers
      Src: /src/dbus-broker/src/bus/test-match.c:385,1
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/bus/test-match.c:387,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/bus/test-match.c:388,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:389,1
    - Dst: c_list_first_entry
      Src: /src/dbus-broker/src/bus/test-match.c:391,1
    - Dst: c_list_unlink
      Src: /src/dbus-broker/src/bus/test-match.c:392,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:393,1
    - Dst: match_rule_user_unref
      Src: /src/dbus-broker/src/bus/test-match.c:395,1
    - Dst: match_rule_user_unref
      Src: /src/dbus-broker/src/bus/test-match.c:396,1
    - Dst: match_rule_user_unref
      Src: /src/dbus-broker/src/bus/test-match.c:397,1
    - Dst: match_rule_user_unref
      Src: /src/dbus-broker/src/bus/test-match.c:398,1
    - Dst: match_owner_deinit
      Src: /src/dbus-broker/src/bus/test-match.c:399,1
    - Dst: match_owner_deinit
      Src: /src/dbus-broker/src/bus/test-match.c:400,1
    - Dst: match_registry_deinit
      Src: /src/dbus-broker/src/bus/test-match.c:401,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 33
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 350
    functionDepth: 8
    functionLinenumber: 350
    functionLinenumberEnd: 402
    functionName: test_iterator
    functionSourceFile: /src/dbus-broker/src/bus/test-match.c
    functionUses: 0
    functionsReached:
    - C_LIST_INIT
    - match_owner_ref_rule
    - c_list_first_entry
    - match_owner_init
    - match_registry_get_subscribers
    - match_owner_deinit
    - match_registry_deinit
    - c_list_unlink
    - MATCH_REGISTRY_INIT
    - match_rule_link
    - c_assert
    - match_rule_user_unref
    linkageType: ''
    returnType: void
    signature: void test_iterator(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MATCH_REGISTRY_INIT
      Src: /src/dbus-broker/src/bus/test-match.c:406,1
    - Dst: match_owner_init
      Src: /src/dbus-broker/src/bus/test-match.c:411,1
    - Dst: match_owner_init
      Src: /src/dbus-broker/src/bus/test-match.c:412,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:414,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:415,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:416,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:417,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:418,1
    - Dst: match_owner_ref_rule
      Src: /src/dbus-broker/src/bus/test-match.c:422,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:423,1
    - Dst: match_rule_link
      Src: /src/dbus-broker/src/bus/test-match.c:425,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:426,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:428,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:429,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:430,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:431,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:432,1
    - Dst: match_owner_ref_rule
      Src: /src/dbus-broker/src/bus/test-match.c:436,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:437,1
    - Dst: match_rule_link
      Src: /src/dbus-broker/src/bus/test-match.c:439,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:440,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:442,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:443,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:444,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:445,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:446,1
    - Dst: match_owner_ref_rule
      Src: /src/dbus-broker/src/bus/test-match.c:450,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:451,1
    - Dst: match_rule_link
      Src: /src/dbus-broker/src/bus/test-match.c:453,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:454,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:456,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:457,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:458,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:459,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:460,1
    - Dst: match_owner_ref_rule
      Src: /src/dbus-broker/src/bus/test-match.c:464,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:465,1
    - Dst: match_rule_link
      Src: /src/dbus-broker/src/bus/test-match.c:467,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:468,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:470,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:471,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:472,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:473,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:474,1
    - Dst: match_rule_user_unref
      Src: /src/dbus-broker/src/bus/test-match.c:476,1
    - Dst: match_rule_user_unref
      Src: /src/dbus-broker/src/bus/test-match.c:477,1
    - Dst: match_rule_user_unref
      Src: /src/dbus-broker/src/bus/test-match.c:478,1
    - Dst: match_rule_user_unref
      Src: /src/dbus-broker/src/bus/test-match.c:479,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:481,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:482,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:483,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:484,1
    - Dst: c_assert
      Src: /src/dbus-broker/src/bus/test-match.c:485,1
    - Dst: match_owner_deinit
      Src: /src/dbus-broker/src/bus/test-match.c:487,1
    - Dst: match_owner_deinit
      Src: /src/dbus-broker/src/bus/test-match.c:488,1
    - Dst: match_registry_deinit
      Src: /src/dbus-broker/src/bus/test-match.c:489,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 56
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 404
    functionDepth: 7
    functionLinenumber: 404
    functionLinenumberEnd: 490
    functionName: test_counters
    functionSourceFile: /src/dbus-broker/src/bus/test-match.c
    functionUses: 0
    functionsReached:
    - match_owner_ref_rule
    - match_owner_deinit
    - match_owner_init
    - match_registry_deinit
    - MATCH_REGISTRY_INIT
    - match_rule_link
    - c_assert
    - match_rule_user_unref
    linkageType: ''
    returnType: void
    signature: void test_counters(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MATCH_OWNER_INIT
      Src: /src/dbus-broker/src/bus/test-match.c:493,1
    - Dst: test_splitting
      Src: /src/dbus-broker/src/bus/test-match.c:495,1
    - Dst: test_parse_key
      Src: /src/dbus-broker/src/bus/test-match.c:496,1
    - Dst: test_parse_value
      Src: /src/dbus-broker/src/bus/test-match.c:497,1
    - Dst: test_wildcard
      Src: /src/dbus-broker/src/bus/test-match.c:498,1
    - Dst: test_validate_keys
      Src: /src/dbus-broker/src/bus/test-match.c:499,1
    - Dst: test_eavesdrop
      Src: /src/dbus-broker/src/bus/test-match.c:500,1
    - Dst: test_individual_matches
      Src: /src/dbus-broker/src/bus/test-match.c:502,1
    - Dst: test_iterator
      Src: /src/dbus-broker/src/bus/test-match.c:503,1
    - Dst: test_counters
      Src: /src/dbus-broker/src/bus/test-match.c:504,1
    - Dst: match_owner_deinit
      Src: /src/dbus-broker/src/bus/test-match.c:506,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 492
    functionDepth: 10
    functionLinenumber: 492
    functionLinenumberEnd: 508
    functionName: main
    functionSourceFile: /src/dbus-broker/src/bus/test-match.c
    functionUses: 0
    functionsReached:
    - MATCH_OWNER_INIT
    - test_wildcard
    - test_eavesdrop
    - test_validate_keys
    - test_iterator
    - test_counters
    - test_parse_value
    - match_owner_deinit
    - test_parse_key
    - test_splitting
    - test_individual_matches
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
Fuzzer filename: /src/fuzz-message.c
Fuzzing method: LLVMFuzzerTestOneInput
included-header-files:
- launch/service.h
- util/metrics.h
- sys/wait.h
- bus/bus.h
- util/fdlist.h
- launch/policy.h
- stdint.h
- c-list.h
- pthread.h
- c-ini.h
- sys/ioctl.h
- util/string.h
- sys/apparmor.h
- string.h
- cap-ng.h
- dbus/connection.h
- util/fs.h
- bus/driver.h
- util-broker.h
- launch/config.h
- math.h
- broker/main.h
- linux/sockios.h
- util/apparmor.h
- stdio.h
- util/sockopt.h
- bus/peer.h
- endian.h
- util/dirwatch.h
- fcntl.h
- util/log.h
- selinux/avc.h
- util/nsec.h
- bus/match.h
- bus/listener.h
- sys/signalfd.h
- c-dvar-type.h
- util/selinux.h
- util/audit.h
- util/ref.h
- bus/reply.h
- util/syscall.h
- stdlib.h
- sys/syscall.h
- sys/inotify.h
- dbus/socket.h
- bus/activation.h
- signal.h
- util/misc.h
- sys/socket.h
- libaudit.h
- util/proc.h
- grp.h
- bus/name.h
- systemd/sd-id128.h
- systemd/sd-bus.h
- sys/syslog.h
- getopt.h
- unistd.h
- sys/un.h
- dbus/queue.h
- util/systemd.h
- assert.h
- broker/controller.h
- sys/prctl.h
- sys/stat.h
- sys/time.h
- sys/auxv.h
- catalog/catalog-ids.h
- dbus/address.h
- c-dvar.h
- bus/policy.h
- util/common.h
- dbus/sasl.h
- stddef.h
- systemd/sd-daemon.h
- c-shquote.h
- c-rbtree.h
- expat.h
- sys/mman.h
- pwd.h
- c-stdaux.h
- broker/broker.h
- dbus/protocol.h
- sys/types.h
- launch/nss-cache.h
- util/user.h
- systemd/sd-event.h
- stdatomic.h
- util/dispatch.h
- stdnoreturn.h
- util/error.h
- sys/resource.h
- dirent.h
- dbus/message.h
- limits.h
- selinux/selinux.h
- util-message.h
- stdbool.h
- time.h
- launch/launcher.h
- sys/epoll.h
report: name
sources:
- function_names:
  - LLVMFuzzerTestOneInput
  source_file: /src/fuzz-message.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_connect_blocking_fd
  - test_message_transaction
  - test_broadcast
  - test_replies
  - test_pipelining
  - main
  source_file: /src/dbus-broker/test/dbus/bench-message.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: TEST_N_ITERATIONS
      pos:
        line_end: 14
        line_start: 13
        source_file: /src/dbus-broker/test/dbus/bench-message.c
      type_or_value: '500'
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_dummy
  - test_connect
  - test_self_ping
  - test_ping_pong_fn
  - test_ping_pong
  - main
  source_file: /src/dbus-broker/test/dbus/test-broker.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_dummy
  - test_client1
  - test_client2
  - test_monitor
  - test_names
  - main
  source_file: /src/dbus-broker/test/dbus/test-lifetime.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_unknown
  - test_hello
  - test_request_name
  - test_release_name
  - test_get_name_owner
  - test_name_has_owner
  - test_start_service_by_name
  - test_update_activation_environment
  - test_list_names
  - test_list_activatable_names
  - test_add_match
  - test_remove_match
  - test_list_queued_owners
  - test_get_connection_unix_user
  - test_get_connection_unix_process_id
  - test_verify_selinux_context
  - test_verify_credentials
  - test_get_connection_credentials
  - test_get_connection_selinux_security_context
  - test_get_adt_audit_session_data
  - test_get_id
  - test_introspect
  - test_reload_config
  - test_become_monitor
  - test_ping
  - test_get_machine_id
  - test_verify_property_features
  - test_verify_property_interfaces
  - test_properties
  - test_no_destination
  - test_stats
  - main
  source_file: /src/dbus-broker/test/dbus/test-driver.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_wildcard
  - test_unique_name
  - test_well_known_name
  - test_driver
  - test_noc_wildcard
  - test_noc_unique
  - test_noc_well_known
  - test_noc_driver
  - test_arg
  - test_args
  - test_argpath
  - main
  source_file: /src/dbus-broker/test/dbus/test-matches.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - TEST_T_MESSAGE
  - test_message_append
  - test_message_append_sasl
  - test_cdvar_message_header
  - test_message_append_hello
  - test_message_append_broadcast
  - test_message_append_ping2
  - test_message_append_ping
  - test_message_append_pong
  - test_message_append_signal
  source_file: /src/dbus-broker/test/dbus/util-message.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/dbus-broker/test/dbus/util-broker.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: BROKER_NULL
      pos:
        line_end: 35
        line_start: 28
        source_file: /src/dbus-broker/test/dbus/util-broker.h
      type_or_value: "{                                                           \\\n
        \               .address.sun_family = AF_UNIX,                                  \\\n
        \               .n_address = sizeof(struct sockaddr_un),                        \\\n
        \               .listener_fd = -1,                                              \\\n
        \               .pipe_fds[0] = -1,                                              \\\n
        \               .pipe_fds[1] = -1,                                              \\\n
        \       }"
    structs:
    - fields:
      - name: thread
        type: pthread_t
      - name: address
        type: struct sockaddr_un
      - name: n_address
        type: socklen_t
      - name: listener_fd
        type: int
      - name: pipe_fds[2]
        type: int
      - name: pid
        type: pid_t
      - name: child_pid
        type: pid_t
      item_type: struct
      name: Broker
      pos:
        line_end: 26
        line_start: 18
        source_file: /src/dbus-broker/test/dbus/util-broker.h
    typedefs: []
    union: []
- function_names:
  - test_fd_stream_send
  - test_fd_stream_hello
  - test_fd_stream_fn
  - test_fd_stream
  - main
  source_file: /src/dbus-broker/test/dbus/test-fdstream.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_connect_system_blocking_fd
  - test_flood
  - main
  source_file: /src/dbus-broker/test/dbus/tool-flood.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/dbus-broker/test/dbus/util-message.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_connect_blocking_fd
  - test_connect_one
  - test_sasl
  - test_hello
  - test_transaction
  - main
  source_file: /src/dbus-broker/test/dbus/bench-connect.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: TEST_N_ITERATIONS
      pos:
        line_end: 14
        line_start: 13
        source_file: /src/dbus-broker/test/dbus/bench-connect.c
      type_or_value: '500'
    structs: []
    typedefs: []
    union: []
- function_names:
  - util_is_reference
  - util_event_new
  - util_event_sigchld
  - util_append_policy
  - util_method_reload_config
  - util_fork_broker
  - util_fork_daemon
  - util_broker_new
  - util_broker_free
  - util_event_sigusr1
  - util_broker_thread
  - util_broker_spawn
  - util_broker_terminate
  - util_broker_settle
  - util_broker_connect_fd
  - util_broker_connect_raw
  - util_broker_connect
  - util_broker_connect_monitor
  - util_broker_disconnect
  - util_broker_consume_method_call
  - util_broker_consume_method_return
  - util_broker_consume_method_error
  - util_broker_consume_signal
  source_file: /src/dbus-broker/test/dbus/util-broker.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: POLICY_T_BATCH
      pos:
        line_end: 58
        line_start: 53
        source_file: /src/dbus-broker/test/dbus/util-broker.c
      type_or_value: "\"bt\"                                                            \\\n
        \               \"a(btbs)\"                                                       \\\n
        \               \"a(btssssuutt)\"                                                 \\\n
        \               \"a(btssssuutt)\""
    - item_type: preproc_def
      name: POLICY_T
      pos:
        line_end: 64
        line_start: 59
        source_file: /src/dbus-broker/test/dbus/util-broker.c
      type_or_value: "\"a(u(\" POLICY_T_BATCH \"))\"                                      \\\n
        \               \"a(buu(\" POLICY_T_BATCH \"))\"                                    \\\n
        \               \"a(ss)\"                                                         \\\n
        \               \"bs\""
    structs: []
    typedefs: []
    union: []
- function_names:
  - CONFIG_FILE_NULL
  - CONFIG_NODE_NULL
  - CONFIG_ROOT_NULL
  - CONFIG_PARSER_NULL
  source_file: /src/dbus-broker/src/launch/config.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: CONFIG_PARSER_BUFFER_MAX
      pos:
        line_end: 21
        line_start: 20
        source_file: /src/dbus-broker/src/launch/config.h
      type_or_value: '4096'
    structs:
    - fields:
      - name: n_refs
        type: unsigned long
      - name: '*parent'
        type: ConfigPath
      - name: is_dir
        type: bool
      - name: path[]
        type: char
      item_type: struct
      name: ConfigPath
      pos:
        line_end: 107
        line_start: 102
        source_file: /src/dbus-broker/src/launch/config.h
    - fields:
      - name: root_link
        type: CList
      - name: include_link
        type: CList
      - name: '*parent'
        type: ConfigNode
      - name: n_children
        type: size_t
      - name: '*path'
        type: ConfigPath
      - name: '*file'
        type: char
      - name: lineno
        type: unsigned long
      - name: '*cdata'
        type: char
      - name: n_cdata
        type: size_t
      - name: type
        type: unsigned int
      item_type: struct
      name: ConfigNode
      pos:
        line_end: 201
        line_start: 113
        source_file: /src/dbus-broker/src/launch/config.h
    - fields:
      - name: node_list
        type: CList
      - name: include_list
        type: CList
      item_type: struct
      name: ConfigRoot
      pos:
        line_end: 213
        line_start: 210
        source_file: /src/dbus-broker/src/launch/config.h
    - fields:
      - name: '*xml'
        type: struct XML_ParserStruct
      - name: salt
        type: unsigned long
      - name: state
        type: "struct ConfigState {\n                NSSCache *nss;\n                Dirwatch
          *dirwatch;\n                ConfigPath *file;\n                ConfigRoot
          *root;\n                ConfigNode *current;\n                ConfigNode
          *last;\n                size_t n_depth;\n                size_t n_failed;\n
          \               int error;\n        }"
      item_type: struct
      name: ConfigParser
      pos:
        line_end: 235
        line_start: 220
        source_file: /src/dbus-broker/src/launch/config.h
    - fields:
      - name: '*nss'
        type: NSSCache
      - name: '*dirwatch'
        type: Dirwatch
      - name: '*file'
        type: ConfigPath
      - name: '*root'
        type: ConfigRoot
      - name: '*current'
        type: ConfigNode
      - name: '*last'
        type: ConfigNode
      - name: n_depth
        type: size_t
      - name: n_failed
        type: size_t
      - name: error
        type: int
      item_type: struct
      name: ConfigState
      pos:
        line_end: 234
        line_start: 224
        source_file: /src/dbus-broker/src/launch/config.h
    typedefs: []
    union: []
- function_names:
  - bus_close_unref
  - log_append_bus_error
  - log_append_siginfo
  - log_append_signalfd_siginfo
  - log_append_service_path
  - log_append_service_name
  - log_append_service_user
  - launcher_on_sighup
  - launcher_on_dirwatch
  - launcher_open_journal
  - launcher_open_log
  - launcher_new
  - launcher_free
  - launcher_run_child
  - launcher_on_child_exit
  - launcher_fork
  - launcher_on_name_activate
  - launcher_set_environment_handler
  - launcher_on_set_activation_environment
  - launcher_on_message
  - launcher_ini_reader_parse_file
  - launcher_load_service_file
  - launcher_load_service_dir
  - launcher_add_services
  - launcher_remove_services
  - launcher_load_standard_session_services
  - launcher_load_standard_system_services
  - launcher_load_services
  - launcher_parse_config
  - launcher_load_policy
  - launcher_add_listener
  - launcher_set_policy
  - launcher_reload_config
  - launcher_connect
  - launcher_subscribe
  - bus_method_reload_config
  - launcher_run
  source_file: /src/dbus-broker/src/launch/launcher.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/dbus-broker/src/launch/service.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*launcher'
        type: Launcher
      - name: '*slot_watch_jobs'
        type: sd_bus_slot
      - name: '*slot_watch_unit'
        type: sd_bus_slot
      - name: '*slot_start_unit'
        type: sd_bus_slot
      - name: rb
        type: CRBNode
      - name: rb_by_name
        type: CRBNode
      - name: n_missing_unit
        type: uint64_t
      - name: n_masked_unit
        type: uint64_t
      - name: last_serial
        type: uint64_t
      - name: '*active_data'
        type: ServiceData
      - name: '*active_unit'
        type: char
      - name: '*job'
        type: char
      - name: not_found
        type: bool
      - name: running
        type: bool
      - name: reload_tag
        type: bool
      - name: is_transient
        type: bool
      - name: '*name'
        type: char
      - name: instance
        type: uint64_t
      - name: '*data'
        type: ServiceData
      - name: id[]
        type: char
      item_type: struct
      name: Service
      pos:
        line_end: 39
        line_start: 15
        source_file: /src/dbus-broker/src/launch/service.h
    - fields:
      - name: '*path'
        type: char
      - name: '*unit'
        type: char
      - name: '*user'
        type: char
      - name: uid
        type: uid_t
      - name: argc
        type: size_t
      - name: '*argv[]'
        type: char
      item_type: struct
      name: ServiceData
      pos:
        line_end: 49
        line_start: 41
        source_file: /src/dbus-broker/src/launch/service.h
    typedefs: []
    union: []
- function_names:
  - help
  - parse_argv
  - inherit_fds
  - run
  - main
  source_file: /src/dbus-broker/src/launch/main.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - config_memfd
  - parse_config
  - parse_config_inline
  - print_config
  - test_config_base
  - test_config_sample0
  - test_config_sample1
  - main
  source_file: /src/dbus-broker/src/launch/test-config.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_nss_cache
  - main
  source_file: /src/dbus-broker/src/launch/test-nss-cache.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - POLICY_RECORD_INIT_CONNECT
  - POLICY_RECORD_INIT_OWN
  - POLICY_RECORD_INIT_XMIT
  - POLICY_RECORD_INIT_SELINUX
  - POLICY_ENTRIES_NULL
  - POLICY_NODE_NULL
  - POLICY_INIT
  source_file: /src/dbus-broker/src/launch/policy.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: POLICY_PRIORITY_DEFAULT
      pos:
        line_end: 19
        line_start: 18
        source_file: /src/dbus-broker/src/launch/policy.h
      type_or_value: (UINT64_C(1))
    structs:
    - fields:
      - name: link
        type: CList
      - name: verdict
        type: bool
      - name: priority
        type: uint64_t
      item_type: struct
      name: PolicyRecord
      pos:
        line_end: 48
        line_start: 20
        source_file: /src/dbus-broker/src/launch/policy.h
    - fields:
      - name: connect_list
        type: CList
      - name: own_list
        type: CList
      - name: send_list
        type: CList
      - name: recv_list
        type: CList
      item_type: struct
      name: PolicyEntries
      pos:
        line_end: 71
        line_start: 66
        source_file: /src/dbus-broker/src/launch/policy.h
    - fields:
      - name: uidgid
        type: uint32_t
      - name: policy_node
        type: CRBNode
      - name: entries
        type: PolicyEntries
      item_type: struct
      name: PolicyNode
      pos:
        line_end: 85
        line_start: 80
        source_file: /src/dbus-broker/src/launch/policy.h
    - fields:
      - name: i_priority
        type: uint64_t
      - name: default_entries
        type: PolicyEntries
      - name: at_console_entries
        type: PolicyEntries
      - name: no_console_entries
        type: PolicyEntries
      - name: uid_tree
        type: CRBTree
      - name: gid_tree
        type: CRBTree
      - name: selinux_list
        type: CList
      - name: apparmor_mode
        type: unsigned int
      - name: '*bus_type'
        type: char
      item_type: struct
      name: Policy
      pos:
        line_end: 106
        line_start: 93
        source_file: /src/dbus-broker/src/launch/policy.h
    typedefs: []
    union: []
- function_names:
  - log_append_bus_error
  - log_append_service_path
  - log_append_service_name
  - log_append_service_unit
  - log_append_service_user
  - log_append_service
  - service_new
  - service_free
  - service_update
  - service_compare
  - service_compare_by_name
  - service_discard_activation
  - service_reset_activation
  - service_watch_jobs_handler
  - service_watch_jobs
  - service_start_unit_handler
  - service_start_unit
  - service_start_transient_unit
  - service_watch_unit_handler
  - service_watch_unit_load_handler
  - service_watch_unit
  - service_activate
  - service_add
  - service_remove
  - service_data_new
  - service_data_free
  - service_data_duplicate
  source_file: /src/dbus-broker/src/launch/service.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - policy_record_new_connect
  - policy_record_new_own
  - policy_record_new_xmit
  - policy_record_new_selinux
  - policy_record_free
  - policy_record_xmit_trim
  - policy_entries_deinit
  - policy_entries_is_empty
  - policy_node_compare
  - policy_node_free
  - policy_node_new
  - policy_init
  - policy_deinit
  - policy_at_uidgid
  - policy_at_uid
  - policy_at_gid
  - policy_import_verdict
  - policy_import_connect_self
  - policy_import_connect
  - policy_import_own
  - policy_import_send
  - policy_import_recv
  - policy_import_selinux
  - policy_import_apparmor
  - policy_import
  - policy_list_find_top
  - policy_list_shrink
  - policy_optimize_connect
  - policy_optimize_trim
  - policy_optimize
  - policy_export_connect
  - policy_export_own
  - c_list_for_each_entry
  - c_list_for_each_entry
  - policy_export_xmit
  - c_list_for_each_entry
  - c_list_for_each_entry
  - policy_export_console
  - policy_uid_compare
  - policy_export
  source_file: /src/dbus-broker/src/launch/policy.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: POLICY_T_BATCH
      pos:
        line_end: 934
        line_start: 929
        source_file: /src/dbus-broker/src/launch/policy.c
      type_or_value: "\"bt\"                                                            \\\n
        \               \"a(btbs)\"                                                       \\\n
        \               \"a(btssssuutt)\"                                                 \\\n
        \               \"a(btssssuutt)\""
    - item_type: preproc_def
      name: POLICY_T
      pos:
        line_end: 941
        line_start: 935
        source_file: /src/dbus-broker/src/launch/policy.c
      type_or_value: "\"a(u(\" POLICY_T_BATCH \"))\"                                      \\\n
        \               \"a(buu(\" POLICY_T_BATCH \"))\"                                    \\\n
        \               \"a(ss)\"                                                         \\\n
        \               \"b\"                                                             \\\n
        \               \"s\""
    structs: []
    typedefs: []
    union: []
- function_names:
  - CONFIG_ERR
  - config_path_new
  - config_path_new_dir
  - config_path_ref
  - config_path_unref
  - config_node_new
  - config_node_free
  - config_root_new
  - config_root_free
  - config_parser_attrs_include
  - config_parser_attrs_policy
  - config_parser_attrs_limit
  - config_parser_attrs_apparmor
  - config_parser_attrs_allow_deny
  - config_parser_attrs_associate
  - config_parser_attrs_default
  - config_parser_begin_fn
  - config_parser_end_fn
  - config_parser_blob_fn
  - config_parser_init
  - config_parser_deinit
  - config_parser_include
  - config_parser_read
  source_file: /src/dbus-broker/src/launch/config.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - nss_cache_node_new
  - nss_cache_node_free
  - nss_cache_init
  - nss_cache_deinit
  - nss_cache_node_compare_name
  - nss_cache_node_compare_id
  - nss_cache_add
  - nss_cache_add_user
  - nss_cache_add_group
  - nss_cache_populate_users
  - nss_cache_populate_groups
  - nss_cache_populate
  - nss_cache_get_uid
  - nss_cache_get_gid
  - nss_cache_resolve_names
  - nss_cache_resolve_system_console_users
  source_file: /src/dbus-broker/src/launch/nss-cache.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: id
        type: uint32_t
      - name: rb_by_name
        type: CRBNode
      - name: rb_by_id
        type: CRBNode
      - name: name[]
        type: char
      item_type: struct
      name: NSSCacheNode
      pos:
        line_end: 38
        line_start: 23
        source_file: /src/dbus-broker/src/launch/nss-cache.c
    typedefs: []
    union: []
- function_names: []
  source_file: /src/dbus-broker/src/launch/nss-cache.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: NSS_CACHE_INIT
      pos:
        line_end: 31
        line_start: 25
        source_file: /src/dbus-broker/src/launch/nss-cache.h
      type_or_value: "{                                                        \\\n
        \               .user_tree = C_RBTREE_INIT,                                     \\\n
        \               .uid_tree = C_RBTREE_INIT,                                      \\\n
        \               .group_tree = C_RBTREE_INIT,                                    \\\n
        \               .gid_tree = C_RBTREE_INIT,                                      \\\n
        \       }"
    structs:
    - fields:
      - name: user_tree
        type: CRBTree
      - name: uid_tree
        type: CRBTree
      - name: group_tree
        type: CRBTree
      - name: gid_tree
        type: CRBTree
      item_type: struct
      name: NSSCache
      pos:
        line_end: 23
        line_start: 18
        source_file: /src/dbus-broker/src/launch/nss-cache.h
    typedefs: []
    union: []
- function_names: []
  source_file: /src/dbus-broker/src/launch/launcher.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*event'
        type: sd_event
      - name: '*bus_controller'
        type: sd_bus
      - name: '*bus_regular'
        type: sd_bus
      - name: log
        type: Log
      - name: fd_listen
        type: int
      - name: audit
        type: bool
      - name: user_scope
        type: bool
      - name: '*configfile'
        type: char
      - name: '*dirwatch'
        type: Dirwatch
      - name: '*dirwatch_src'
        type: sd_event_source
      - name: services
        type: CRBTree
      - name: services_by_name
        type: CRBTree
      - name: service_ids
        type: uint64_t
      - name: uid
        type: uint32_t
      - name: gid
        type: uint32_t
      - name: max_bytes
        type: uint64_t
      - name: max_fds
        type: uint64_t
      - name: max_matches
        type: uint64_t
      - name: at_console
        type: bool
      item_type: struct
      name: Launcher
      pos:
        line_end: 44
        line_start: 24
        source_file: /src/dbus-broker/src/launch/launcher.h
    typedefs: []
    union: []
- function_names: []
  source_file: /src/dbus-broker/src/catalog/catalog-ids.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: DBUS_BROKER_CATALOG_ACTIVATE_NO_UNIT
      pos:
        line_end: 12
        line_start: 11
        source_file: /src/dbus-broker/src/catalog/catalog-ids.h
      type_or_value: '"7fc63312330b479bb32e598d47cef1a8"'
    - item_type: preproc_def
      name: DBUS_BROKER_CATALOG_ACTIVATE_MASKED_UNIT
      pos:
        line_end: 13
        line_start: 12
        source_file: /src/dbus-broker/src/catalog/catalog-ids.h
      type_or_value: '"ee9799dab1e24d81b7bee7759a543e1b"'
    - item_type: preproc_def
      name: DBUS_BROKER_CATALOG_BROKER_EXITED
      pos:
        line_end: 14
        line_start: 13
        source_file: /src/dbus-broker/src/catalog/catalog-ids.h
      type_or_value: '"a0fa58cafd6f4f0c8d003d16ccf9e797"'
    - item_type: preproc_def
      name: DBUS_BROKER_CATALOG_DIRWATCH
      pos:
        line_end: 15
        line_start: 14
        source_file: /src/dbus-broker/src/catalog/catalog-ids.h
      type_or_value: '"c8c6cde1c488439aba371a664353d9d8"'
    - item_type: preproc_def
      name: DBUS_BROKER_CATALOG_DISPATCH_STATS
      pos:
        line_end: 16
        line_start: 15
        source_file: /src/dbus-broker/src/catalog/catalog-ids.h
      type_or_value: '"8af3357071af4153af414daae07d38e7"'
    - item_type: preproc_def
      name: DBUS_BROKER_CATALOG_NO_SOPEERGROUP
      pos:
        line_end: 17
        line_start: 16
        source_file: /src/dbus-broker/src/catalog/catalog-ids.h
      type_or_value: '"199d4300277f495f84ba4028c984214c"'
    - item_type: preproc_def
      name: DBUS_BROKER_CATALOG_PROTOCOL_VIOLATION
      pos:
        line_end: 18
        line_start: 17
        source_file: /src/dbus-broker/src/catalog/catalog-ids.h
      type_or_value: '"b209c0d9d1764ab38d13b8e00d1784d6"'
    - item_type: preproc_def
      name: DBUS_BROKER_CATALOG_RECEIVE_FAILED
      pos:
        line_end: 19
        line_start: 18
        source_file: /src/dbus-broker/src/catalog/catalog-ids.h
      type_or_value: '"6fa70fa776044fa28be7a21daf42a108"'
    - item_type: preproc_def
      name: DBUS_BROKER_CATALOG_SERVICE_FAILED_OPEN
      pos:
        line_end: 20
        line_start: 19
        source_file: /src/dbus-broker/src/catalog/catalog-ids.h
      type_or_value: '"0ce0fa61d1a9433dabd67417f6b8e535"'
    - item_type: preproc_def
      name: DBUS_BROKER_CATALOG_SERVICE_INVALID
      pos:
        line_end: 21
        line_start: 20
        source_file: /src/dbus-broker/src/catalog/catalog-ids.h
      type_or_value: '"24dc708d9e6a4226a3efe2033bb744de"'
    - item_type: preproc_def
      name: DBUS_BROKER_CATALOG_SIGHUP
      pos:
        line_end: 22
        line_start: 21
        source_file: /src/dbus-broker/src/catalog/catalog-ids.h
      type_or_value: '"f15d2347662d483ea9bcd8aa1a691d28"'
    structs: []
    typedefs: []
    union: []
- function_names:
  - connection_init
  - connection_init_server
  - connection_init_client
  - connection_deinit
  - connection_get_stats
  - connection_feed_sasl
  - connection_open
  - connection_shutdown
  - connection_close
  - connection_dispatch
  - connection_dequeue
  - connection_queue
  source_file: /src/dbus-broker/src/dbus/connection.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - sasl_client_is_done
  - sasl_server_is_done
  source_file: /src/dbus-broker/src/dbus/sasl.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SASL_CLIENT_NULL
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/dbus-broker/src/dbus/sasl.h
      type_or_value: '{}'
    - item_type: preproc_def
      name: SASL_SERVER_NULL
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/dbus-broker/src/dbus/sasl.h
      type_or_value: '{}'
    structs:
    - fields:
      - name: state
        type: unsigned int
      item_type: struct
      name: SASLClient
      pos:
        line_end: 33
        line_start: 31
        source_file: /src/dbus-broker/src/dbus/sasl.h
    - fields:
      - name: state
        type: unsigned int
      - name: fds_allowed
        type: bool
      - name: uid
        type: uid_t
      - name: ok_response[sizeof("OK 0123456789abcdef0123456789abdcef") - 1]
        type: char
      item_type: struct
      name: SASLServer
      pos:
        line_end: 60
        line_start: 55
        source_file: /src/dbus-broker/src/dbus/sasl.h
    typedefs: []
    union: []
- function_names:
  - ADDRESS_INIT_ID
  - ADDRESS_INIT_NAME
  source_file: /src/dbus-broker/src/dbus/address.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: ADDRESS_ID_INVALID
      pos:
        line_end: 20
        line_start: 19
        source_file: /src/dbus-broker/src/dbus/address.h
      type_or_value: (ULLONG_MAX)
    - item_type: preproc_def
      name: ADDRESS_ID_STRING_MAX
      pos:
        line_end: 22
        line_start: 21
        source_file: /src/dbus-broker/src/dbus/address.h
      type_or_value: (3 + C_DECIMAL_MAX(uint64_t))
    - item_type: preproc_def
      name: ADDRESS_NULL
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/dbus-broker/src/dbus/address.h
      type_or_value: '{ .type = _ADDRESS_TYPE_OTHER }'
    structs:
    - fields:
      - name: type
        type: unsigned int
      - name: buffer[ADDRESS_ID_STRING_MAX + 1]
        type: char
      item_type: struct
      name: Address
      pos:
        line_end: 30
        line_start: 23
        source_file: /src/dbus-broker/src/dbus/address.h
    typedefs: []
    union: []
- function_names:
  - MESSAGE_INIT
  - message_ref
  - message_unref
  - message_read_serial
  source_file: /src/dbus-broker/src/dbus/message.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MESSAGE_SIZE_MAX
      pos:
        line_end: 20
        line_start: 19
        source_file: /src/dbus-broker/src/dbus/message.h
      type_or_value: (128UL * 1024UL * 1024UL)
    - item_type: preproc_def
      name: MESSAGE_PATCH_MAX
      pos:
        line_end: 23
        line_start: 22
        source_file: /src/dbus-broker/src/dbus/message.h
      type_or_value: (C_ALIGN_TO(1 + 3 + 4 + ADDRESS_ID_STRING_MAX + 1, 8))
    - item_type: preproc_def
      name: MESSAGE_METADATA_INIT
      pos:
        line_end: 68
        line_start: 65
        source_file: /src/dbus-broker/src/dbus/message.h
      type_or_value: "{                         \\\n                .sender_id = ADDRESS_ID_INVALID,
        \       \\\n        }"
    structs:
    - fields:
      - name: header
        type: "struct {\n                uint8_t type;\n                uint8_t flags;\n
          \               uint8_t version;\n                uint32_t serial;\n        }"
      - name: sender_id
        type: uint64_t
      - name: fields
        type: "struct {\n                unsigned int available;\n                const
          char *path;\n                const char *interface;\n                const
          char *member;\n                const char *error_name;\n                uint32_t
          reply_serial;\n                const char *destination;\n                const
          char *sender;\n                const char *signature;\n                uint32_t
          unix_fds;\n        }"
      - name: args[64]
        type: "struct {\n                char element;\n                const void
          *value;\n        }"
      - name: n_args
        type: size_t
      item_type: struct
      name: MessageMetadata
      pos:
        line_end: 63
        line_start: 35
        source_file: /src/dbus-broker/src/dbus/message.h
    - fields:
      - name: n_refs
        type: unsigned long
      - name: big_endian
        type: bool
      - name: allocated_data
        type: bool
      - name: parsed
        type: bool
      - name: '*fds'
        type: FDList
      - name: n_data
        type: size_t
      - name: n_copied
        type: size_t
      - name: n_header
        type: size_t
      - name: n_body
        type: size_t
      - name: '*data'
        type: void
      - name: '*header'
        type: MessageHeader
      - name: metadata
        type: MessageMetadata
      - name: '*body'
        type: void
      - name: '*original_sender'
        type: void
      - name: vecs[4]
        type: struct iovec
      - name: patch[MESSAGE_PATCH_MAX]
        type: uint8_t
      - name: extra[]
        type: uint8_t
      item_type: struct
      name: Message
      pos:
        line_end: 92
        line_start: 69
        source_file: /src/dbus-broker/src/dbus/message.h
    - fields:
      - name: endian
        type: uint8_t
      - name: type
        type: uint8_t
      - name: flags
        type: uint8_t
      - name: version
        type: uint8_t
      - name: n_body
        type: uint32_t
      - name: serial
        type: uint32_t
      - name: n_fields
        type: uint32_t
      item_type: struct
      name: MessageHeader
      pos:
        line_end: 108
        line_start: 100
        source_file: /src/dbus-broker/src/dbus/message.h
    typedefs: []
    union: []
- function_names:
  - dbus_validate_name_common
  - dbus_validate_name
  - dbus_validate_namespace
  - dbus_validate_interface
  - dbus_validate_member
  - dbus_validate_error_name
  source_file: /src/dbus-broker/src/dbus/protocol.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - socket_buffer_get_base
  - socket_buffer_free
  - socket_buffer_new_internal
  - socket_buffer_new_line
  - socket_buffer_new_message
  - socket_buffer_get_line_space
  - socket_buffer_get_line_cursor
  - socket_buffer_is_uncomsumed
  - socket_buffer_is_consumed
  - socket_buffer_consume
  - socket_discard_input
  - socket_discard_output
  - socket_init
  - socket_deinit
  - socket_might_reset
  - socket_hangup_input
  - socket_hangup_output
  - socket_shutdown_now
  - socket_dequeue_line
  - socket_dequeue
  - socket_queue_line
  - socket_queue
  - socket_recvmsg
  - socket_dispatch_read
  - socket_dispatch_write
  - socket_dispatch
  - socket_shutdown
  - socket_close
  - socket_get_stats
  source_file: /src/dbus-broker/src/dbus/socket.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: link
        type: CList
      - name: charges[2]
        type: UserCharge
      - name: n_total
        type: size_t
      - name: '*message'
        type: Message
      - name: n_vecs
        type: size_t
      - name: '*writer'
        type: struct iovec
      - name: vecs[]
        type: struct iovec
      item_type: struct
      name: SocketBuffer
      pos:
        line_end: 39
        line_start: 29
        source_file: /src/dbus-broker/src/dbus/socket.c
    typedefs: []
    union:
    - fields:
      - name: cmsg
        type: struct cmsghdr
      - name: buffer[CMSG_SPACE(sizeof(int) * SOCKET_FD_MAX)]
        type: char
      item_type: union
      name: control
      pos:
        line_end: 525
        line_start: 522
        source_file: /src/dbus-broker/src/dbus/socket.c
- function_names:
  - test_new_message
  - test_assert_message
  - test_stitching
  - main
  source_file: /src/dbus-broker/src/dbus/test-stitching.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - iqueue_init
  - iqueue_deinit
  - iqueue_flush
  - iqueue_set_target
  - iqueue_get_cursor
  - iqueue_pop_line
  - iqueue_pop_data
  source_file: /src/dbus-broker/src/dbus/queue.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - address_init_from_id
  - address_init_from_name
  - address_from_string
  - address_to_string
  - address_write
  source_file: /src/dbus-broker/src/dbus/address.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_in_setup
  - test_in_special
  - test_in_lines
  - main
  source_file: /src/dbus-broker/src/dbus/test-queue.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: TEST_8
      pos:
        line_end: 12
        line_start: 11
        source_file: /src/dbus-broker/src/dbus/test-queue.c
      type_or_value: '"01234567"'
    - item_type: preproc_def
      name: TEST_64
      pos:
        line_end: 13
        line_start: 12
        source_file: /src/dbus-broker/src/dbus/test-queue.c
      type_or_value: TEST_8 TEST_8 TEST_8 TEST_8 TEST_8 TEST_8 TEST_8 TEST_8
    - item_type: preproc_def
      name: TEST_512
      pos:
        line_end: 14
        line_start: 13
        source_file: /src/dbus-broker/src/dbus/test-queue.c
      type_or_value: TEST_64 TEST_64 TEST_64 TEST_64 TEST_64 TEST_64 TEST_64 TEST_64
    - item_type: preproc_def
      name: TEST_2k
      pos:
        line_end: 15
        line_start: 14
        source_file: /src/dbus-broker/src/dbus/test-queue.c
      type_or_value: TEST_512 TEST_512 TEST_512 TEST_512
    - item_type: preproc_def
      name: TEST_8k
      pos:
        line_end: 16
        line_start: 15
        source_file: /src/dbus-broker/src/dbus/test-queue.c
      type_or_value: TEST_2k TEST_2k TEST_2k TEST_2k
    - item_type: preproc_def
      name: TEST_32k
      pos:
        line_end: 17
        line_start: 16
        source_file: /src/dbus-broker/src/dbus/test-queue.c
      type_or_value: TEST_8k TEST_8k TEST_8k TEST_8k
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_server_setup
  - test_client_setup
  - test_server_conversations
  - test_client_run
  - main
  source_file: /src/dbus-broker/src/dbus/test-sasl.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - sasl_split
  - sasl_client_init
  - sasl_client_deinit
  - sasl_client_dispatch
  - sasl_server_init
  - sasl_server_deinit
  - sasl_server_handle_data
  - sasl_server_handle_auth
  - sasl_server_dispatch
  source_file: /src/dbus-broker/src/dbus/sasl.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_setup
  - test_size
  - main
  source_file: /src/dbus-broker/src/dbus/test-message.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - IQUEUE_NULL
  - OQUEUE_NULL
  - iqueue_get_target
  - iqueue_is_eof
  source_file: /src/dbus-broker/src/dbus/queue.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: IQUEUE_LINE_MAX
      pos:
        line_end: 15
        line_start: 14
        source_file: /src/dbus-broker/src/dbus/queue.h
      type_or_value: '(16UL * 1024UL) '
    - item_type: preproc_def
      name: IQUEUE_RECV_MAX
      pos:
        line_end: 16
        line_start: 15
        source_file: /src/dbus-broker/src/dbus/queue.h
      type_or_value: '(2UL * 1024UL) '
    structs:
    - fields:
      - name: '*user'
        type: User
      - name: charge_data
        type: UserCharge
      - name: charge_fds
        type: UserCharge
      - name: '*data'
        type: char
      - name: data_size
        type: size_t
      - name: data_start
        type: size_t
      - name: data_end
        type: size_t
      - name: data_cursor
        type: size_t
      - name: '*fds'
        type: FDList
      - name: pending
        type: "struct {\n                UserCharge charge_data;\n                UserCharge
          charge_fds;\n                void *data;\n                size_t n_data;\n
          \               size_t n_copied;\n                FDList *fds;\n        }"
      - name: buffer[IQUEUE_RECV_MAX]
        type: char
      item_type: struct
      name: IQueue
      pos:
        line_end: 47
        line_start: 25
        source_file: /src/dbus-broker/src/dbus/queue.h
    - fields:
      - name: '*user'
        type: User
      - name: list_buffers
        type: CList
      - name: list_inflight
        type: CList
      item_type: struct
      name: OQueue
      pos:
        line_end: 62
        line_start: 58
        source_file: /src/dbus-broker/src/dbus/queue.h
    typedefs: []
    union: []
- function_names:
  - CONNECTION_NULL
  - connection_is_running
  source_file: /src/dbus-broker/src/dbus/connection.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: socket
        type: Socket
      - name: socket_file
        type: DispatchFile
      - name: sasl_server
        type: SASLServer
      - name: sasl_client
        type: SASLClient
      - name: server
        type: bool
      - name: authenticated
        type: bool
      item_type: struct
      name: Connection
      pos:
        line_end: 36
        line_start: 28
        source_file: /src/dbus-broker/src/dbus/connection.h
    typedefs: []
    union: []
- function_names:
  - message_new
  - message_new_incoming
  - message_new_outgoing
  - message_free
  - message_parse_header
  - message_parse_body
  - message_parse_metadata
  - message_stitch_sender
  - message_log_append
  source_file: /src/dbus-broker/src/dbus/message.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_setup
  - test_line
  - test_message
  - main
  source_file: /src/dbus-broker/src/dbus/test-socket.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_basic
  - main
  source_file: /src/dbus-broker/src/dbus/test-address.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - SOCKET_NULL
  - socket_is_running
  source_file: /src/dbus-broker/src/dbus/socket.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SOCKET_LINE_PREALLOC
      pos:
        line_end: 18
        line_start: 17
        source_file: /src/dbus-broker/src/dbus/socket.h
      type_or_value: '(64UL) '
    - item_type: preproc_def
      name: SOCKET_FD_MAX
      pos:
        line_end: 19
        line_start: 18
        source_file: /src/dbus-broker/src/dbus/socket.h
      type_or_value: '(253UL) '
    - item_type: preproc_def
      name: SOCKET_MMSG_MAX
      pos:
        line_end: 20
        line_start: 19
        source_file: /src/dbus-broker/src/dbus/socket.h
      type_or_value: '(16) '
    structs:
    - fields:
      - name: '*user'
        type: User
      - name: fd
        type: int
      - name: shutdown
        type: bool
      - name: reset
        type: bool
      - name: hup_in
        type: bool
      - name: hup_out
        type: bool
      - name: in
        type: "struct {\n                IQueue queue;\n                MessageHeader
          header;\n                Message *message;\n        }"
      - name: out
        type: "struct SocketOut {\n                CList queue;\n                CList
          pending;\n        }"
      item_type: struct
      name: Socket
      pos:
        line_end: 55
        line_start: 36
        source_file: /src/dbus-broker/src/dbus/socket.h
    - fields:
      - name: queue
        type: CList
      - name: pending
        type: CList
      item_type: struct
      name: SocketOut
      pos:
        line_end: 54
        line_start: 51
        source_file: /src/dbus-broker/src/dbus/socket.h
    typedefs: []
    union: []
- function_names: []
  source_file: /src/dbus-broker/src/dbus/protocol.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - wait_and_verify
  - create_server
  - create_client
  - test_peerpidfd_client
  - test_peerpidfd
  - main
  source_file: /src/dbus-broker/src/util/test-sockopt.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/dbus-broker/src/util/audit.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/dbus-broker/src/util/apparmor.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - log_commitf
  - log_commit_silent
  - log_appends
  - log_appendf
  - log_append_here
  source_file: /src/dbus-broker/src/util/log.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: LOG_NULL
      pos:
        line_end: 47
        line_start: 42
        source_file: /src/dbus-broker/src/util/log.h
      type_or_value: "{                                                              \\\n
        \               .log_fd = -1,                                                   \\\n
        \               .mem_fd = -1,                                                   \\\n
        \               .map = MAP_FAILED,                                              \\\n
        \       }"
    structs:
    - fields:
      - name: log_fd
        type: int
      - name: mode
        type: unsigned short
      - name: consumed
        type: bool
      - name: lossy
        type: bool
      - name: n_dropped
        type: uint64_t
      - name: error
        type: int
      - name: level
        type: int
      - name: mem_fd
        type: int
      - name: '*map'
        type: void
      - name: map_size
        type: size_t
      - name: offset
        type: size_t
      item_type: struct
      name: Log
      pos:
        line_end: 40
        line_start: 26
        source_file: /src/dbus-broker/src/util/log.h
    typedefs: []
    union: []
- function_names:
  - metrics_init
  - metrics_deinit
  - metrics_get_time
  - metrics_sample_add
  - metrics_sample_start
  - metrics_sample_end
  - metrics_read_standard_deviation
  source_file: /src/dbus-broker/src/util/metrics.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - bus_selinux_is_enabled
  - bus_selinux_is_enforcing
  - bus_selinux_policy_root
  - bus_selinux_registry_new
  - bus_selinux_registry_ref
  - bus_selinux_registry_unref
  - bus_selinux_registry_add_name
  - bus_selinux_check_own
  - bus_selinux_check_send
  - bus_selinux_init_global
  - bus_selinux_deinit_global
  source_file: /src/dbus-broker/src/util/selinux-fallback.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_setup
  - test_quota
  - test_overflow
  - main
  source_file: /src/dbus-broker/src/util/test-user.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - error_slow_origin
  - error_slow_trace
  - error_slow_fold
  source_file: /src/dbus-broker/src/util/error.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_setup
  - test_dummy
  - test_consumer
  - test_dup
  - main
  source_file: /src/dbus-broker/src/util/test-fdlist.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - dirwatch_new
  - dirwatch_free
  - dirwatch_get_fd
  - dirwatch_dispatch
  - dirwatch_add
  source_file: /src/dbus-broker/src/util/dirwatch.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - misc_memfd
  - misc_memfd_add_seals
  - misc_memfd_get_seals
  - util_umul64_saturating
  - util_z2u_saturating
  - util_t2u_saturating
  - util_drop_permissions
  - util_peak_update
  source_file: /src/dbus-broker/src/util/misc.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MISC_F_ADD_SEALS
      pos:
        line_end: 18
        line_start: 17
        source_file: /src/dbus-broker/src/util/misc.c
      type_or_value: (F_LINUX_SPECIFIC_BASE + 9)
    - item_type: preproc_def
      name: MISC_F_GET_SEALS
      pos:
        line_end: 19
        line_start: 18
        source_file: /src/dbus-broker/src/util/misc.c
      type_or_value: (F_LINUX_SPECIFIC_BASE + 10)
    - item_type: preproc_def
      name: MISC_F_ADD_SEALS
      pos:
        line_end: 21
        line_start: 20
        source_file: /src/dbus-broker/src/util/misc.c
      type_or_value: (1024 + 9)
    - item_type: preproc_def
      name: MISC_F_GET_SEALS
      pos:
        line_end: 22
        line_start: 21
        source_file: /src/dbus-broker/src/util/misc.c
      type_or_value: (1024 + 10)
    structs: []
    typedefs: []
    union: []
- function_names:
  - string_compare
  - string_equal
  - string_prefix
  - string_to_hex
  - string_from_hex
  source_file: /src/dbus-broker/src/util/string.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_basic
  - main
  source_file: /src/dbus-broker/src/util/test-dirwatch.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_field
  - test_read
  - test_resolve_pidfd
  - main
  source_file: /src/dbus-broker/src/util/test-proc.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - user_slot_to_string
  - user_ref
  - user_unref
  source_file: /src/dbus-broker/src/util/user.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: USER_CHARGE_INIT
      pos:
        line_end: 71
        line_start: 70
        source_file: /src/dbus-broker/src/util/user.h
      type_or_value: '{}'
    - item_type: preproc_def
      name: USER_REGISTRY_NULL
      pos:
        line_end: 107
        line_start: 104
        source_file: /src/dbus-broker/src/util/user.h
      type_or_value: "{                                                    \\\n                .user_tree
        = C_RBTREE_INIT,                                     \\\n        }"
    structs:
    - fields:
      - name: n_refs
        type: unsigned long
      - name: '*user'
        type: User
      - name: uid
        type: uid_t
      - name: user_node
        type: CRBNode
      - name: logged
        type: bool
      - name: slots[]
        type: unsigned int
      item_type: struct
      name: UserUsage
      pos:
        line_end: 60
        line_start: 51
        source_file: /src/dbus-broker/src/util/user.h
    - fields:
      - name: '*usage'
        type: UserUsage
      - name: slot
        type: size_t
      - name: charge
        type: unsigned int
      item_type: struct
      name: UserCharge
      pos:
        line_end: 68
        line_start: 64
        source_file: /src/dbus-broker/src/util/user.h
    - fields:
      - name: n_refs
        type: unsigned long
      - name: '*registry'
        type: UserRegistry
      - name: uid
        type: uid_t
      - name: registry_node
        type: CRBNode
      - name: usage_tree
        type: CRBTree
      - name: n_usages
        type: unsigned int
      - name: slots[]
        type: "struct {\n                unsigned int n;\n                unsigned
          int max;\n        }"
      item_type: struct
      name: User
      pos:
        line_end: 90
        line_start: 77
        source_file: /src/dbus-broker/src/util/user.h
    - fields:
      - name: '*log'
        type: Log
      - name: user_tree
        type: CRBTree
      - name: n_slots
        type: size_t
      - name: '*maxima'
        type: unsigned int
      item_type: struct
      name: UserRegistry
      pos:
        line_end: 102
        line_start: 97
        source_file: /src/dbus-broker/src/util/user.h
    typedefs: []
    union: []
- function_names:
  - fdlist_data
  - fdlist_count
  - fdlist_size
  - fdlist_get
  source_file: /src/dbus-broker/src/util/fdlist.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: consumed
        type: bool
      - name: cmsg[]
        type: struct cmsghdr
      item_type: struct
      name: FDList
      pos:
        line_end: 15
        line_start: 12
        source_file: /src/dbus-broker/src/util/fdlist.h
    typedefs: []
    union: []
- function_names:
  - dispatch_file_init
  - dispatch_file_deinit
  - dispatch_file_select
  - dispatch_file_deselect
  - dispatch_file_clear
  - dispatch_context_init
  - dispatch_context_deinit
  - dispatch_context_poll
  - dispatch_context_dispatch
  source_file: /src/dbus-broker/src/util/dispatch.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - util_strtou32
  - util_strtou64
  - util_strtoint
  source_file: /src/dbus-broker/src/util/string.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - sockopt_get_peersec
  - gid_compare
  - sockopt_get_peergroups
  - sockopt_get_peerpidfd
  source_file: /src/dbus-broker/src/util/sockopt.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SO_PEERPIDFD
      pos:
        line_end: 227
        line_start: 226
        source_file: /src/dbus-broker/src/util/sockopt.c
      type_or_value: '0x404B'
    - item_type: preproc_def
      name: SO_PEERPIDFD
      pos:
        line_end: 229
        line_start: 228
        source_file: /src/dbus-broker/src/util/sockopt.c
      type_or_value: '0x0056'
    - item_type: preproc_def
      name: SO_PEERPIDFD
      pos:
        line_end: 231
        line_start: 230
        source_file: /src/dbus-broker/src/util/sockopt.c
      type_or_value: '77'
    structs: []
    typedefs: []
    union: []
- function_names:
  - proc_field
  - proc_read
  - proc_get_seclabel
  - proc_resolve_pidfd
  source_file: /src/dbus-broker/src/util/proc.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PROC_SIZE_MIN
      pos:
        line_end: 18
        line_start: 17
        source_file: /src/dbus-broker/src/util/proc.c
      type_or_value: (4U*1024U)
    - item_type: preproc_def
      name: PROC_SIZE_MAX
      pos:
        line_end: 19
        line_start: 18
        source_file: /src/dbus-broker/src/util/proc.c
      type_or_value: (4U*1024U*1024U - 1U)
    structs: []
    typedefs: []
    union: []
- function_names:
  - ref_add
  - ref_add_unless_zero
  - ref_inc
  - ref_inc_unless_zero
  - ref_unreachable
  - ref_sub
  - ref_dec
  source_file: /src/dbus-broker/src/util/ref.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: REF_INIT
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/dbus-broker/src/util/ref.h
      type_or_value: ATOMIC_VAR_INIT(1UL)
    structs: []
    typedefs:
    - item_type: typedef
      name: (*RefFn) (_Atomic unsigned long *ref, void *userdata)
      pos:
        line_end: 19
        line_start: 19
        source_file: /src/dbus-broker/src/util/ref.h
      type: void
    union: []
- function_names: []
  source_file: /src/dbus-broker/src/util/proc.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PROC_PID_SELF
      pos:
        line_end: 11
        line_start: 10
        source_file: /src/dbus-broker/src/util/proc.h
      type_or_value: ((pid_t)0)
    structs: []
    typedefs: []
    union: []
- function_names:
  - needs_escape
  - escape_char
  - systemd_escape_unit
  source_file: /src/dbus-broker/src/util/systemd.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - util_audit_drop_permissions
  - util_audit_log
  - util_audit_init_global
  - util_audit_deinit_global
  source_file: /src/dbus-broker/src/util/audit-fallback.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/dbus-broker/src/util/misc.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MISC_MFD_CLOEXEC
      pos:
        line_end: 10
        line_start: 9
        source_file: /src/dbus-broker/src/util/misc.h
      type_or_value: 0x0001U
    - item_type: preproc_def
      name: MISC_MFD_ALLOW_SEALING
      pos:
        line_end: 11
        line_start: 10
        source_file: /src/dbus-broker/src/util/misc.h
      type_or_value: 0x0002U
    - item_type: preproc_def
      name: MISC_MFD_HUGETLB
      pos:
        line_end: 12
        line_start: 11
        source_file: /src/dbus-broker/src/util/misc.h
      type_or_value: 0x0004U
    - item_type: preproc_def
      name: MISC_MFD_NOEXEC_SEAL
      pos:
        line_end: 13
        line_start: 12
        source_file: /src/dbus-broker/src/util/misc.h
      type_or_value: 0x0008U
    - item_type: preproc_def
      name: MISC_MFD_EXEC
      pos:
        line_end: 14
        line_start: 13
        source_file: /src/dbus-broker/src/util/misc.h
      type_or_value: 0x0010U
    - item_type: preproc_def
      name: MISC_F_SEAL_SEAL
      pos:
        line_end: 16
        line_start: 15
        source_file: /src/dbus-broker/src/util/misc.h
      type_or_value: 0x0001U
    - item_type: preproc_def
      name: MISC_F_SEAL_SHRINK
      pos:
        line_end: 17
        line_start: 16
        source_file: /src/dbus-broker/src/util/misc.h
      type_or_value: 0x0002U
    - item_type: preproc_def
      name: MISC_F_SEAL_GROW
      pos:
        line_end: 18
        line_start: 17
        source_file: /src/dbus-broker/src/util/misc.h
      type_or_value: 0x0004U
    - item_type: preproc_def
      name: MISC_F_SEAL_WRITE
      pos:
        line_end: 19
        line_start: 18
        source_file: /src/dbus-broker/src/util/misc.h
      type_or_value: 0x0008U
    - item_type: preproc_def
      name: MISC_F_SEAL_FUTURE_WRITE
      pos:
        line_end: 20
        line_start: 19
        source_file: /src/dbus-broker/src/util/misc.h
      type_or_value: 0x0010U
    - item_type: preproc_def
      name: MISC_F_SEAL_EXEC
      pos:
        line_end: 21
        line_start: 20
        source_file: /src/dbus-broker/src/util/misc.h
      type_or_value: 0x0020U
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_systemd_escape_unit
  - main
  source_file: /src/dbus-broker/src/util/test-systemd.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - syscall_memfd_create
  - syscall_pidfd_open
  source_file: /src/dbus-broker/src/util/syscall.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - bus_apparmor_is_enabled
  - bus_apparmor_dbus_supported
  - bus_apparmor_registry_new
  - bus_apparmor_registry_free
  - bus_apparmor_registry_ref
  - bus_apparmor_registry_unref
  - bus_apparmor_set_bus_type
  - bus_apparmor_log
  - is_unconfined
  - build_service_query
  - build_message_query_name
  - build_eavesdrop_query
  - apparmor_message_query_name
  - apparmor_message_query
  - bus_apparmor_check_own
  - bus_apparmor_check_xmit
  - bus_apparmor_check_eavesdrop
  source_file: /src/dbus-broker/src/util/apparmor.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: n_refs
        type: unsigned long
      - name: '*bustype'
        type: char
      - name: fallback_context[]
        type: char
      item_type: struct
      name: BusAppArmorRegistry
      pos:
        line_end: 24
        line_start: 20
        source_file: /src/dbus-broker/src/util/apparmor.c
    typedefs: []
    union: []
- function_names: []
  source_file: /src/dbus-broker/src/util/fs.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: n_entries
        type: size_t
      - name: n_allocated
        type: size_t
      - name: '**entries'
        type: struct dirent
      item_type: struct
      name: FsDirlist
      pos:
        line_end: 21
        line_start: 17
        source_file: /src/dbus-broker/src/util/fs.h
    typedefs: []
    union: []
- function_names: []
  source_file: /src/dbus-broker/src/util/common.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - METRICS_INIT
  source_file: /src/dbus-broker/src/util/metrics.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: METRICS_TIMESTAMP_INVALID
      pos:
        line_end: 11
        line_start: 10
        source_file: /src/dbus-broker/src/util/metrics.h
      type_or_value: ((uint64_t) -1)
    structs:
    - fields:
      - name: count
        type: uint64_t
      - name: sum
        type: uint64_t
      - name: minimum
        type: uint64_t
      - name: maximum
        type: uint64_t
      - name: average
        type: uint64_t
      - name: id
        type: clockid_t
      - name: timestamp
        type: uint64_t
      - name: sum_of_squares
        type: uint64_t
      item_type: struct
      name: Metrics
      pos:
        line_end: 25
        line_start: 14
        source_file: /src/dbus-broker/src/util/metrics.h
    typedefs: []
    union: []
- function_names:
  - fdlist_new_with_fds
  - fdlist_new_consume_fds
  - fdlist_new_dup_fds
  - fdlist_free
  - fdlist_truncate
  - fdlist_steal
  source_file: /src/dbus-broker/src/util/fdlist.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/dbus-broker/src/util/systemd.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - log_init
  - log_init_stderr
  - log_init_journal
  - log_init_journal_consume
  - log_deinit
  - log_get_fd
  - log_set_lossy
  - log_alloc
  - log_fd_send
  - log_loop_send
  - log_stream_send
  - log_journal_send
  - log_commit_stderr
  - log_commit_journal
  - log_vcommitf
  - log_append
  - log_vappendf
  - log_append_common
  source_file: /src/dbus-broker/src/util/log.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: LOG_SIZE_MAX
      pos:
        line_end: 91
        line_start: 90
        source_file: /src/dbus-broker/src/util/log.c
      type_or_value: (2ULL * 1024ULL * 1024ULL)
    - item_type: preproc_def
      name: LOG_WARNING_DROPPED
      pos:
        line_end: 94
        line_start: 93
        source_file: /src/dbus-broker/src/util/log.c
      type_or_value: '"<3>Log messages dropped\n"'
    structs: []
    typedefs: []
    union:
    - fields:
      - name: buffer[CMSG_SPACE(sizeof(int))]
        type: char
      - name: cmsg
        type: struct cmsghdr
      item_type: union
      name: control
      pos:
        line_end: 275
        line_start: 272
        source_file: /src/dbus-broker/src/util/log.c
- function_names:
  - test_basic
  - main
  source_file: /src/dbus-broker/src/util/test-apparmor.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - fs_dirlist_new
  - fs_dirlist_free
  - fs_dirlist_push
  - fs_dirlist_cmp_p
  - fs_dirlist_sort
  - fs_dir_list
  source_file: /src/dbus-broker/src/util/fs.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/dbus-broker/src/util/sockopt.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - error_origin
  - ERROR_ORIGIN
  - error_trace
  - ERROR_TRACE
  - error_fold
  - ERROR_FOLD
  source_file: /src/dbus-broker/src/util/error.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - q_assert
  - test_uds_edge
  - main
  source_file: /src/dbus-broker/src/util/test-dispatch.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/dbus-broker/src/util/acct.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: ACCT_CHARGE_INIT
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/dbus-broker/src/util/acct.h
      type_or_value: '{}'
    structs:
    - fields:
      - name: '*trace'
        type: void
      - name: amount[_ACCT_SLOT_N]
        type: acct_value_t
      item_type: struct
      name: AcctCharge
      pos:
        line_end: 36
        line_start: 33
        source_file: /src/dbus-broker/src/util/acct.h
    typedefs:
    - item_type: typedef
      name: acct_id_t
      pos:
        line_end: 9
        line_start: 9
        source_file: /src/dbus-broker/src/util/acct.h
      type: uint32_t
    - item_type: typedef
      name: acct_value_t
      pos:
        line_end: 10
        line_start: 10
        source_file: /src/dbus-broker/src/util/acct.h
      type: uint64_t
    union: []
- function_names:
  - util_audit_drop_permissions
  - util_audit_log
  - util_audit_init_global
  - util_audit_deinit_global
  source_file: /src/dbus-broker/src/util/audit.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - bus_apparmor_is_enabled
  - bus_apparmor_dbus_supported
  - bus_apparmor_registry_new
  - bus_apparmor_registry_ref
  - bus_apparmor_registry_unref
  - bus_apparmor_set_bus_type
  - bus_apparmor_check_own
  - bus_apparmor_check_xmit
  - bus_apparmor_check_eavesdrop
  source_file: /src/dbus-broker/src/util/apparmor-fallback.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - user_usage_link
  - user_usage_unlink
  - user_usage_new
  - user_usage_free
  - user_usage_ref
  - user_usage_unref
  - user_usage_compare
  - user_charge_init
  - user_charge_deinit
  - user_charge_check
  - user_link
  - user_unlink
  - user_new
  - user_free
  - user_ref_usage
  - user_charge_commit_log
  - user_charge
  - user_compare
  - user_registry_init
  - user_registry_deinit
  - user_registry_ref_user
  source_file: /src/dbus-broker/src/util/user.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - DISPATCH_FILE_NULL
  - DISPATCH_CONTEXT_NULL
  - dispatch_file_events
  source_file: /src/dbus-broker/src/util/dispatch.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*context'
        type: DispatchContext
      - name: ready_link
        type: CList
      - name: fn
        type: DispatchFn
      - name: fd
        type: int
      - name: user_mask
        type: uint32_t
      - name: kernel_mask
        type: uint32_t
      - name: events
        type: uint32_t
      item_type: struct
      name: DispatchFile
      pos:
        line_end: 32
        line_start: 23
        source_file: /src/dbus-broker/src/util/dispatch.h
    - fields:
      - name: ready_list
        type: CList
      - name: epoll_fd
        type: int
      - name: n_files
        type: size_t
      item_type: struct
      name: DispatchContext
      pos:
        line_end: 57
        line_start: 53
        source_file: /src/dbus-broker/src/util/dispatch.h
    typedefs:
    - item_type: typedef
      name: (*DispatchFn) (DispatchFile *file)
      pos:
        line_end: 19
        line_start: 19
        source_file: /src/dbus-broker/src/util/dispatch.h
      type: int
    union: []
- function_names:
  - socketpair_fallback
  - test_peersec
  - main
  source_file: /src/dbus-broker/src/util/test-peersec.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_nsec
  - main
  source_file: /src/dbus-broker/src/util/test-nsec.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - memfd_seals
  - test_memfd
  - test_umul_saturating
  - test_casts
  - main
  source_file: /src/dbus-broker/src/util/test-misc.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: in_flags
        type: unsigned int
      - name: in_seals
        type: unsigned int
      - name: out_error
        type: int
      - name: out_seals
        type: unsigned int
      - name: out_fmode
        type: unsigned int
      item_type: struct
      name: "v[] = {\n                {\n                        .out_error = -ENOTRECOVERABLE,\n
        \               },\n                {\n                        .in_flags =
        MISC_MFD_EXEC,\n                        .in_seals = MISC_F_SEAL_WRITE,\n                        .out_error
        = -ENOTRECOVERABLE,\n                },\n                {\n                        .in_flags
        = MISC_MFD_EXEC,\n                        .out_seals = MISC_F_SEAL_SEAL,\n
        \                       .out_fmode = 0777,\n                },\n                {\n
        \                       .in_flags = MISC_MFD_EXEC,\n                        .in_seals
        = MISC_F_SEAL_SEAL,\n                        .out_seals = MISC_F_SEAL_SEAL,\n
        \                       .out_fmode = 0777,\n                },\n                {\n
        \                       .in_flags = MISC_MFD_NOEXEC_SEAL,\n                        .out_seals
        = MISC_F_SEAL_SEAL | MISC_F_SEAL_EXEC,\n                        .out_fmode
        = 0666,\n                },\n                {\n                        .in_flags
        = MISC_MFD_ALLOW_SEALING | MISC_MFD_NOEXEC_SEAL,\n                        .out_seals
        = MISC_F_SEAL_EXEC,\n                        .out_fmode = 0666,\n                },\n
        \               {\n                        .in_flags = MISC_MFD_ALLOW_SEALING
        | MISC_MFD_NOEXEC_SEAL,\n                        .in_seals = MISC_F_SEAL_WRITE,\n
        \                       .out_seals = MISC_F_SEAL_WRITE | MISC_F_SEAL_EXEC,\n
        \                       .out_fmode = 0666,\n                },\n        }"
      pos:
        line_end: 52
        line_start: 46
        source_file: /src/dbus-broker/src/util/test-misc.c
    - fields:
      - name: input_a
        type: uint64_t
      - name: input_b
        type: uint64_t
      - name: output
        type: uint64_t
      item_type: struct
      name: "values[] = {\n                { 0, 0, 0 },\n                { 0, 1, 0
        },\n                { 1, 0, 0 },\n                { 1, 1, 1 },\n\n                {
        UINT32_MAX, UINT32_MAX, UINT64_MAX - UINT64_C(2) * UINT32_MAX },\n                {
        UINT32_MAX, UINT32_MAX + UINT64_C(1), UINT64_MAX - UINT32_MAX },\n                {
        UINT32_MAX + UINT64_C(1), UINT32_MAX + UINT64_C(1), UINT64_MAX },\n\n                {
        1, UINT64_MAX - 1, UINT64_MAX - 1 },\n                { UINT64_MAX - 1, 1,
        UINT64_MAX - 1 },\n                { UINT64_MAX - 1, 2, UINT64_MAX },\n        }"
      pos:
        line_end: 123
        line_start: 119
        source_file: /src/dbus-broker/src/util/test-misc.c
    - fields:
      - name: from
        type: size_t
      - name: to
        type: unsigned int
      item_type: struct
      name: "casts_z2u_sat[] = {\n                { 0, 0 },\n                { 32,
        32 },\n                { 256, 256 },\n                { SIZE_MAX, UINT_MAX
        },\n#if SIZE_MAX > UINT_MAX\n                { (size_t)UINT_MAX, UINT_MAX
        },\n                { (size_t)UINT_MAX + 1, UINT_MAX },\n                {
        (size_t)UINT_MAX * 2, UINT_MAX },\n#endif\n        }"
      pos:
        line_end: 150
        line_start: 147
        source_file: /src/dbus-broker/src/util/test-misc.c
    - fields:
      - name: from
        type: uint64_t
      - name: to
        type: unsigned int
      item_type: struct
      name: "casts_t2u_sat[] = {\n                { 0, 0 },\n                { 32,
        32 },\n                { 256, 256 },\n                { (uint64_t)UINT_MAX,
        UINT_MAX },\n                { (uint64_t)UINT_MAX + 1, UINT_MAX },\n                {
        (uint64_t)UINT_MAX * 2, UINT_MAX },\n                { UINT64_MAX, UINT_MAX
        },\n        }"
      pos:
        line_end: 164
        line_start: 161
        source_file: /src/dbus-broker/src/util/test-misc.c
    typedefs: []
    union: []
- function_names:
  - bus_selinux_is_enabled
  - bus_selinux_is_enforcing
  - bus_selinux_policy_root
  - bus_selinux_name_free
  - bus_selinux_name_new
  - bus_selinux_registry_new
  - bus_selinux_registry_free
  - bus_selinux_registry_ref
  - bus_selinux_registry_unref
  - name_compare
  - bus_selinux_registry_add_name
  - bus_selinux_check_own
  - bus_selinux_check_send
  - bus_selinux_log_fn
  - bus_selinux_init_global
  - bus_selinux_deinit_global
  source_file: /src/dbus-broker/src/util/selinux.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: n_refs
        type: unsigned long
      - name: '*fallback_context'
        type: char
      - name: names
        type: CRBTree
      item_type: struct
      name: BusSELinuxRegistry
      pos:
        line_end: 19
        line_start: 15
        source_file: /src/dbus-broker/src/util/selinux.c
    - fields:
      - name: '*context'
        type: char
      - name: rb
        type: CRBNode
      - name: name[]
        type: char
      item_type: struct
      name: BusSELinuxName
      pos:
        line_end: 25
        line_start: 21
        source_file: /src/dbus-broker/src/util/selinux.c
    typedefs: []
    union: []
- function_names:
  - DIRWATCH_NULL
  - dirwatch_freep
  source_file: /src/dbus-broker/src/util/dirwatch.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: inotify_fd
        type: int
      item_type: struct
      name: Dirwatch
      pos:
        line_end: 19
        line_start: 17
        source_file: /src/dbus-broker/src/util/dirwatch.h
    typedefs: []
    union: []
- function_names:
  - nsec_now
  - nsec_sleep
  source_file: /src/dbus-broker/src/util/nsec.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: NSEC_PER_SEC
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/dbus-broker/src/util/nsec.c
      type_or_value: UINT64_C(1000000000)
    - item_type: preproc_def
      name: NSEC_TIME_T_MAX
      pos:
        line_end: 35
        line_start: 31
        source_file: /src/dbus-broker/src/util/nsec.c
      type_or_value: "((time_t)(                                                      \\\n
        \               (UINTMAX_C(1) << ((sizeof(time_t) << 3) - 1)) - 1)      \\\n
        \       )"
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_basic
  - main
  source_file: /src/dbus-broker/src/util/test-error.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - nsec_to_usec
  source_file: /src/dbus-broker/src/util/nsec.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: NSEC_PRI
      pos:
        line_end: 14
        line_start: 13
        source_file: /src/dbus-broker/src/util/nsec.h
      type_or_value: PRIu64
    structs: []
    typedefs:
    - item_type: typedef
      name: nsec_t
      pos:
        line_end: 11
        line_start: 11
        source_file: /src/dbus-broker/src/util/nsec.h
      type: uint64_t
    union: []
- function_names: []
  source_file: /src/dbus-broker/src/util/selinux.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_dir_list
  - main
  source_file: /src/dbus-broker/src/util/test-fs.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - controller_name_compare
  - controller_name_free
  - controller_name_new
  - controller_name_reset
  - controller_name_activate
  - controller_reload_compare
  - controller_reload_free
  - controller_reload_new
  - controller_reload_completed
  - controller_reload_invalid
  - controller_listener_compare
  - controller_listener_free
  - controller_listener_new
  - controller_listener_set_policy
  - controller_dispatch_connection
  - controller_init
  - controller_deinit
  - controller_add_name
  - controller_add_listener
  - controller_request_reload
  - controller_find_name
  - controller_find_listener
  - controller_find_reload
  source_file: /src/dbus-broker/src/broker/controller.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/dbus-broker/src/broker/main.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - CONTROLLER_RELOAD_NULL
  - CONTROLLER_NULL
  - CONTROLLER_NAME
  - controller_name_error_to_string
  - controller_name_error_to_human_readable
  - controller_name_error_from_string
  source_file: /src/dbus-broker/src/broker/controller.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*controller'
        type: Controller
      - name: controller_node
        type: CRBNode
      - name: activation
        type: Activation
      - name: path[]
        type: char
      item_type: struct
      name: ControllerName
      pos:
        line_end: 74
        line_start: 69
        source_file: /src/dbus-broker/src/broker/controller.h
    - fields:
      - name: '*controller'
        type: Controller
      - name: controller_node
        type: CRBNode
      - name: listener
        type: Listener
      - name: path[]
        type: char
      item_type: struct
      name: ControllerListener
      pos:
        line_end: 81
        line_start: 76
        source_file: /src/dbus-broker/src/broker/controller.h
    - fields:
      - name: '*controller'
        type: Controller
      - name: charge
        type: UserCharge
      - name: controller_node
        type: CRBNode
      - name: sender_id
        type: uint64_t
      - name: sender_serial
        type: uint32_t
      - name: serial
        type: uint32_t
      item_type: struct
      name: ControllerReload
      pos:
        line_end: 90
        line_start: 83
        source_file: /src/dbus-broker/src/broker/controller.h
    - fields:
      - name: '*broker'
        type: Broker
      - name: connection
        type: Connection
      - name: name_tree
        type: CRBTree
      - name: listener_tree
        type: CRBTree
      - name: reload_tree
        type: CRBTree
      - name: serial
        type: uint32_t
      item_type: struct
      name: Controller
      pos:
        line_end: 105
        line_start: 98
        source_file: /src/dbus-broker/src/broker/controller.h
    typedefs: []
    union: []
- function_names:
  - BROKER
  source_file: /src/dbus-broker/src/broker/broker.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*log'
        type: Log
      - name: bus
        type: Bus
      - name: dispatcher
        type: DispatchContext
      - name: signals_fd
        type: int
      - name: signals_file
        type: DispatchFile
      - name: controller
        type: Controller
      item_type: struct
      name: Broker
      pos:
        line_end: 31
        line_start: 22
        source_file: /src/dbus-broker/src/broker/broker.h
    typedefs: []
    union: []
- function_names:
  - broker_dispatch_signals
  - broker_new
  - broker_free
  - broker_log_metrics
  - broker_run
  - broker_update_environment
  - broker_reload_config
  source_file: /src/dbus-broker/src/broker/broker.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - help
  - parse_argv
  - setup
  - run
  - main
  source_file: /src/dbus-broker/src/broker/main.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - CONTROLLER_T_MESSAGE
  - controller_dvar_write_signature_out
  - controller_dvar_verify_signature_in
  - controller_write_reply_header
  - controller_send_error
  - controller_end_read
  - controller_method_add_name
  - controller_method_add_listener
  - controller_method_listener_release
  - controller_method_name_release
  - controller_method_listener_set_policy
  - controller_method_name_reset
  - controller_handle_method
  - controller_dispatch_controller
  - controller_dispatch_name
  - controller_dispatch_listener
  - controller_dispatch_object
  - controller_dispatch_reply
  - controller_dispatch_error
  - controller_dbus_dispatch
  - controller_dbus_send_activation
  - controller_dbus_send_environment
  - controller_dbus_send_reload
  source_file: /src/dbus-broker/src/broker/controller-dbus.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*name'
        type: char
      - name: fn
        type: ControllerMethodFn
      - name: '*in'
        type: CDVarType
      - name: '*out'
        type: CDVarType
      item_type: struct
      name: ControllerMethod
      pos:
        line_end: 27
        line_start: 22
        source_file: /src/dbus-broker/src/broker/controller-dbus.c
    typedefs:
    - item_type: typedef
      name: (*ControllerMethodFn) (Controller *controller, const char *path, CDVar
        *var_in, FDList *fds_in, CDVar *var_out)
      pos:
        line_end: 20
        line_start: 20
        source_file: /src/dbus-broker/src/broker/controller-dbus.c
      type: int
    union: []
- function_names:
  - reply_slot_compare
  - reply_slot_new
  - reply_slot_free
  - reply_slot_get_by_id
  - reply_registry_init
  - reply_registry_deinit
  - reply_owner_init
  - reply_owner_deinit
  - reply_owner_get_stats
  source_file: /src/dbus-broker/src/bus/reply.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: id
        type: uint64_t
      - name: serial
        type: uint32_t
      item_type: struct
      name: ReplySlotKey
      pos:
        line_end: 17
        line_start: 14
        source_file: /src/dbus-broker/src/bus/reply.c
    typedefs: []
    union: []
- function_names:
  - test_basic
  - main
  source_file: /src/dbus-broker/src/bus/test-reply.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - PEER_INIT
  - peer_is_registered
  - peer_is_monitor
  source_file: /src/dbus-broker/src/bus/peer.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PEER_REGISTRY_INIT
      pos:
        line_end: 103
        line_start: 102
        source_file: /src/dbus-broker/src/bus/peer.h
      type_or_value: '{}'
    structs:
    - fields:
      - name: '*bus'
        type: Bus
      - name: '*user'
        type: User
      - name: pid
        type: pid_t
      - name: pid_fd
        type: int
      - name: '*gids'
        type: gid_t
      - name: n_gids
        type: size_t
      - name: '*seclabel'
        type: char
      - name: n_seclabel
        type: size_t
      - name: charges[3]
        type: UserCharge
      - name: id
        type: uint64_t
      - name: registry_node
        type: CRBNode
      - name: listener_link
        type: CList
      - name: connection
        type: Connection
      - name: registered
        type: bool
      - name: monitor
        type: bool
      - name: '*policy'
        type: PolicySnapshot
      - name: owned_names
        type: NameOwner
      - name: sender_matches
        type: MatchRegistry
      - name: name_owner_changed_matches
        type: MatchRegistry
      - name: owned_matches
        type: MatchOwner
      - name: replies
        type: ReplyRegistry
      - name: owned_replies
        type: ReplyOwner
      item_type: struct
      name: Peer
      pos:
        line_end: 80
        line_start: 54
        source_file: /src/dbus-broker/src/bus/peer.h
    - fields:
      - name: peer_tree
        type: CRBTree
      - name: ids
        type: uint64_t
      - name: n_peers
        type: size_t
      - name: n_registered
        type: size_t
      item_type: struct
      name: PeerRegistry
      pos:
        line_end: 100
        line_start: 95
        source_file: /src/dbus-broker/src/bus/peer.h
    typedefs: []
    union: []
- function_names:
  - listener_dispatch
  - listener_init_with_fd
  - listener_deinit
  - listener_set_policy
  source_file: /src/dbus-broker/src/bus/listener.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - bus_init
  - bus_deinit
  - bus_find_peer_by_name
  - bus_get_monitor_destinations
  - bus_get_broadcast_destinations
  - bus_log_append_sender
  - bus_log_append_receiver
  - bus_log_append_transaction
  - bus_log_append_policy_send
  - bus_log_append_policy_receive
  source_file: /src/dbus-broker/src/bus/bus.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - NAME_OWNERSHIP_NULL
  - NAME_INIT
  - NAME_SET_INIT_FROM_OWNER
  - NAME_SET_INIT_FROM_SNAPSHOT
  - name_ref
  - name_unref
  - name_primary
  source_file: /src/dbus-broker/src/bus/name.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: NAME_CHANGE_INIT
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/dbus-broker/src/bus/name.h
      type_or_value: '{}'
    - item_type: preproc_def
      name: NAME_OWNER_INIT
      pos:
        line_end: 85
        line_start: 82
        source_file: /src/dbus-broker/src/bus/name.h
      type_or_value: "{                                                       \\\n
        \               .ownership_tree = C_RBTREE_INIT,                                \\\n
        \       }"
    - item_type: preproc_def
      name: NAME_REGISTRY_INIT
      pos:
        line_end: 96
        line_start: 93
        source_file: /src/dbus-broker/src/bus/name.h
      type_or_value: "{                                                    \\\n                .name_tree
        = C_RBTREE_INIT,                                     \\\n        }"
    - item_type: preproc_def
      name: NAME_SNAPSHOT_NULL
      pos:
        line_end: 103
        line_start: 102
        source_file: /src/dbus-broker/src/bus/name.h
      type_or_value: '{}'
    structs:
    - fields:
      - name: '*name'
        type: Name
      - name: '*old_owner'
        type: NameOwner
      - name: '*new_owner'
        type: NameOwner
      item_type: struct
      name: NameChange
      pos:
        line_end: 37
        line_start: 33
        source_file: /src/dbus-broker/src/bus/name.h
    - fields:
      - name: '*owner'
        type: NameOwner
      - name: '*name'
        type: Name
      - name: owner_node
        type: CRBNode
      - name: name_link
        type: CList
      - name: flags
        type: uint64_t
      - name: charge
        type: UserCharge
      item_type: struct
      name: NameOwnership
      pos:
        line_end: 48
        line_start: 41
        source_file: /src/dbus-broker/src/bus/name.h
    - fields:
      - name: n_refs
        type: unsigned long
      - name: '*registry'
        type: NameRegistry
      - name: registry_node
        type: CRBNode
      - name: '*activation'
        type: Activation
      - name: sender_matches
        type: MatchRegistry
      - name: name_owner_changed_matches
        type: MatchRegistry
      - name: ownership_list
        type: CList
      - name: name[]
        type: char
      item_type: struct
      name: Name
      pos:
        line_end: 67
        line_start: 56
        source_file: /src/dbus-broker/src/bus/name.h
    - fields:
      - name: n_owner_primaries
        type: size_t
      - name: ownership_tree
        type: CRBTree
      item_type: struct
      name: NameOwner
      pos:
        line_end: 80
        line_start: 77
        source_file: /src/dbus-broker/src/bus/name.h
    - fields:
      - name: n_primaries
        type: size_t
      - name: n_primaries_peak
        type: size_t
      - name: n_owner_primaries_peak
        type: size_t
      - name: name_tree
        type: CRBTree
      item_type: struct
      name: NameRegistry
      pos:
        line_end: 91
        line_start: 86
        source_file: /src/dbus-broker/src/bus/name.h
    - fields:
      - name: n_names
        type: size_t
      - name: '*names[]'
        type: Name
      item_type: struct
      name: NameSnapshot
      pos:
        line_end: 100
        line_start: 97
        source_file: /src/dbus-broker/src/bus/name.h
    - fields:
      - name: type
        type: unsigned int
      item_type: struct
      name: NameSet
      pos:
        line_end: 116
        line_start: 110
        source_file: /src/dbus-broker/src/bus/name.h
    typedefs: []
    union: []
- function_names:
  - BUS_NULL
  source_file: /src/dbus-broker/src/bus/bus.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*log'
        type: Log
      - name: '*user'
        type: User
      - name: pid
        type: pid_t
      - name: pid_fd
        type: int
      - name: '*gids'
        type: gid_t
      - name: n_gids
        type: size_t
      - name: '*seclabel'
        type: char
      - name: n_seclabel
        type: size_t
      - name: machine_id[33]
        type: char
      - name: guid[16]
        type: char
      - name: users
        type: UserRegistry
      - name: names
        type: NameRegistry
      - name: match_counters
        type: MatchCounters
      - name: wildcard_matches
        type: MatchRegistry
      - name: sender_matches
        type: MatchRegistry
      - name: peers
        type: PeerRegistry
      - name: n_monitors
        type: uint64_t
      - name: listener_ids
        type: uint64_t
      - name: activation_ids
        type: uint64_t
      - name: stats_ids
        type: uint64_t
      - name: metrics
        type: Metrics
      item_type: struct
      name: Bus
      pos:
        line_end: 59
        line_start: 34
        source_file: /src/dbus-broker/src/bus/bus.h
    typedefs: []
    union: []
- function_names:
  - MATCH_RULE_NULL
  - MATCH_OWNER_INIT
  - MATCH_REGISTRY_BY_KEYS_INIT
  - MATCH_REGISTRY_BY_MEMBER_INIT
  - MATCH_REGISTRY_BY_INTERFACE_INIT
  - MATCH_REGISTRY_BY_PATH_INIT
  - MATCH_REGISTRY_INIT
  source_file: /src/dbus-broker/src/bus/match.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MATCH_RULE_LENGTH_MAX
      pos:
        line_end: 26
        line_start: 25
        source_file: /src/dbus-broker/src/bus/match.h
      type_or_value: '(1024UL) '
    - item_type: preproc_def
      name: MATCH_FILTER_INIT
      pos:
        line_end: 51
        line_start: 47
        source_file: /src/dbus-broker/src/bus/match.h
      type_or_value: "{                             \\\n                .type = DBUS_MESSAGE_TYPE_INVALID,
        \     \\\n                .sender = ADDRESS_ID_INVALID,           \\\n        }"
    - item_type: preproc_def
      name: MATCH_KEYS_NULL
      pos:
        line_end: 66
        line_start: 63
        source_file: /src/dbus-broker/src/bus/match.h
      type_or_value: "{                                                       \\\n
        \               .filter = MATCH_FILTER_INIT,                                    \\\n
        \       }"
    - item_type: preproc_def
      name: MATCH_COUNTERS_INIT
      pos:
        line_end: 173
        line_start: 172
        source_file: /src/dbus-broker/src/bus/match.h
      type_or_value: '{}'
    structs:
    - fields:
      - name: type
        type: uint8_t
      - name: sender
        type: uint64_t
      - name: '*interface'
        type: char
      - name: '*member'
        type: char
      - name: '*path'
        type: char
      - name: '*args[64]'
        type: char
      - name: n_args
        type: size_t
      - name: '*argpaths[64]'
        type: char
      - name: n_argpaths
        type: size_t
      item_type: struct
      name: MatchFilter
      pos:
        line_end: 45
        line_start: 35
        source_file: /src/dbus-broker/src/bus/match.h
    - fields:
      - name: filter
        type: MatchFilter
      - name: '*destination'
        type: char
      - name: '*sender'
        type: char
      - name: '*path_namespace'
        type: char
      - name: '*arg0namespace'
        type: char
      - name: n_buffer
        type: size_t
      - name: buffer[]
        type: char
      item_type: struct
      name: MatchKeys
      pos:
        line_end: 61
        line_start: 52
        source_file: /src/dbus-broker/src/bus/match.h
    - fields:
      - name: n_user_refs
        type: unsigned long int
      - name: '*registry_by_keys'
        type: MatchRegistryByKeys
      - name: registry_link
        type: CList
      - name: '*registry'
        type: MatchRegistry
      - name: '*owner'
        type: MatchOwner
      - name: owner_node
        type: CRBNode
      - name: '*counters'
        type: MatchCounters
      - name: charge[2]
        type: UserCharge
      - name: keys
        type: MatchKeys
      item_type: struct
      name: MatchRule
      pos:
        line_end: 79
        line_start: 67
        source_file: /src/dbus-broker/src/bus/match.h
    - fields:
      - name: n_owner_subscriptions
        type: size_t
      - name: rule_tree
        type: CRBTree
      - name: destinations_link
        type: CList
      item_type: struct
      name: MatchOwner
      pos:
        line_end: 92
        line_start: 88
        source_file: /src/dbus-broker/src/bus/match.h
    - fields:
      - name: n_refs
        type: unsigned long
      - name: rule_list
        type: CList
      - name: '*registry_by_member'
        type: MatchRegistryByMember
      - name: registry_node
        type: CRBNode
      - name: keys
        type: MatchKeys
      item_type: struct
      name: MatchRegistryByKeys
      pos:
        line_end: 106
        line_start: 99
        source_file: /src/dbus-broker/src/bus/match.h
    - fields:
      - name: n_refs
        type: unsigned long
      - name: keys_tree
        type: CRBTree
      - name: '*registry_by_interface'
        type: MatchRegistryByInterface
      - name: registry_node
        type: CRBNode
      - name: member[]
        type: char
      item_type: struct
      name: MatchRegistryByMember
      pos:
        line_end: 121
        line_start: 115
        source_file: /src/dbus-broker/src/bus/match.h
    - fields:
      - name: n_refs
        type: unsigned long
      - name: member_tree
        type: CRBTree
      - name: '*registry_by_path'
        type: MatchRegistryByPath
      - name: registry_node
        type: CRBNode
      - name: interface[]
        type: char
      item_type: struct
      name: MatchRegistryByInterface
      pos:
        line_end: 135
        line_start: 129
        source_file: /src/dbus-broker/src/bus/match.h
    - fields:
      - name: n_refs
        type: unsigned long
      - name: interface_tree
        type: CRBTree
      - name: registry_node
        type: CRBNode
      - name: path[]
        type: char
      item_type: struct
      name: MatchRegistryByPath
      pos:
        line_end: 148
        line_start: 143
        source_file: /src/dbus-broker/src/bus/match.h
    - fields:
      - name: subscription_tree
        type: CRBTree
      - name: monitor_tree
        type: CRBTree
      item_type: struct
      name: MatchRegistry
      pos:
        line_end: 159
        line_start: 156
        source_file: /src/dbus-broker/src/bus/match.h
    - fields:
      - name: n_subscriptions
        type: size_t
      - name: n_subscriptions_peak
        type: size_t
      - name: n_owner_subscriptions_peak
        type: size_t
      item_type: struct
      name: MatchCounters
      pos:
        line_end: 170
        line_start: 166
        source_file: /src/dbus-broker/src/bus/match.h
    typedefs: []
    union: []
- function_names:
  - ACTIVATION_NULL
  source_file: /src/dbus-broker/src/bus/activation.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: charge
        type: UserCharge
      - name: sender_id
        type: uint64_t
      - name: serial
        type: uint32_t
      - name: link
        type: CList
      item_type: struct
      name: ActivationRequest
      pos:
        line_end: 34
        line_start: 29
        source_file: /src/dbus-broker/src/bus/activation.h
    - fields:
      - name: '*user'
        type: User
      - name: charges[2]
        type: UserCharge
      - name: link
        type: CList
      - name: '*message'
        type: Message
      - name: '*senders_policy'
        type: PolicySnapshot
      - name: '*senders_names'
        type: NameSnapshot
      item_type: struct
      name: ActivationMessage
      pos:
        line_end: 43
        line_start: 36
        source_file: /src/dbus-broker/src/bus/activation.h
    - fields:
      - name: '*bus'
        type: Bus
      - name: '*name'
        type: Name
      - name: '*user'
        type: User
      - name: activation_messages
        type: CList
      - name: activation_requests
        type: CList
      - name: pending
        type: uint64_t
      item_type: struct
      name: Activation
      pos:
        line_end: 52
        line_start: 45
        source_file: /src/dbus-broker/src/bus/activation.h
    typedefs: []
    union: []
- function_names:
  - LISTENER_NULL
  source_file: /src/dbus-broker/src/bus/listener.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '*bus'
        type: Bus
      - name: guid[16]
        type: char
      - name: socket_fd
        type: int
      - name: socket_file
        type: DispatchFile
      - name: '*policy'
        type: PolicyRegistry
      - name: peer_list
        type: CList
      item_type: struct
      name: Listener
      pos:
        line_end: 23
        line_start: 16
        source_file: /src/dbus-broker/src/bus/listener.h
    typedefs: []
    union: []
- function_names:
  - POLICY_VERDICT_INIT_WITH
  - POLICY_XMIT_NULL
  - POLICY_BATCH_NAME_NULL
  - POLICY_BATCH_NULL
  - POLICY_REGISTRY_NODE_NULL
  - policy_batch_ref
  - policy_batch_unref
  source_file: /src/dbus-broker/src/bus/policy.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: POLICY_VERDICT_INIT
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/dbus-broker/src/bus/policy.h
      type_or_value: '{}'
    - item_type: preproc_def
      name: POLICY_REGISTRY_NODE_INDEX_NULL
      pos:
        line_end: 101
        line_start: 97
        source_file: /src/dbus-broker/src/bus/policy.h
      type_or_value: "{                                       \\\n                .uidgid_start
        = (uint32_t)-1,                                   \\\n                .uidgid_end
        = (uint32_t)-1,                                     \\\n        }"
    - item_type: preproc_def
      name: POLICY_REGISTRY_NULL
      pos:
        line_end: 128
        line_start: 123
        source_file: /src/dbus-broker/src/bus/policy.h
      type_or_value: "{                                                  \\\n                .uid_range_tree
        = C_RBTREE_INIT,                                \\\n                .uid_tree
        = C_RBTREE_INIT,                                      \\\n                .gid_tree
        = C_RBTREE_INIT,                                      \\\n        }"
    - item_type: preproc_def
      name: POLICY_SNAPSHOT_NULL
      pos:
        line_end: 138
        line_start: 137
        source_file: /src/dbus-broker/src/bus/policy.h
      type_or_value: '{}'
    structs:
    - fields:
      - name: verdict
        type: bool
      - name: priority
        type: uint64_t
      item_type: struct
      name: PolicyVerdict
      pos:
        line_end: 38
        line_start: 35
        source_file: /src/dbus-broker/src/bus/policy.h
    - fields:
      - name: batch_link
        type: CList
      - name: verdict
        type: PolicyVerdict
      - name: type
        type: unsigned int
      - name: broadcast
        type: unsigned int
      - name: '*path'
        type: char
      - name: '*interface'
        type: char
      - name: '*member'
        type: char
      - name: min_fds
        type: uint64_t
      - name: max_fds
        type: uint64_t
      item_type: struct
      name: PolicyXmit
      pos:
        line_end: 53
        line_start: 43
        source_file: /src/dbus-broker/src/bus/policy.h
    - fields:
      - name: '*batch'
        type: PolicyBatch
      - name: batch_node
        type: CRBNode
      - name: own_verdict
        type: PolicyVerdict
      - name: own_prefix_verdict
        type: PolicyVerdict
      - name: send_unindexed
        type: CList
      - name: recv_unindexed
        type: CList
      - name: name[]
        type: char
      item_type: struct
      name: PolicyBatchName
      pos:
        line_end: 70
        line_start: 62
        source_file: /src/dbus-broker/src/bus/policy.h
    - fields:
      - name: n_refs
        type: unsigned long
      - name: connect_verdict
        type: PolicyVerdict
      - name: name_tree
        type: CRBTree
      item_type: struct
      name: PolicyBatch
      pos:
        line_end: 84
        line_start: 80
        source_file: /src/dbus-broker/src/bus/policy.h
    - fields:
      - name: uidgid_start
        type: uint32_t
      - name: uidgid_end
        type: uint32_t
      item_type: struct
      name: PolicyRegistryNodeIndex
      pos:
        line_end: 95
        line_start: 92
        source_file: /src/dbus-broker/src/bus/policy.h
    - fields:
      - name: index
        type: PolicyRegistryNodeIndex
      - name: '*registry_tree'
        type: CRBTree
      - name: registry_node
        type: CRBNode
      - name: '*batch'
        type: PolicyBatch
      item_type: struct
      name: PolicyRegistryNode
      pos:
        line_end: 107
        line_start: 102
        source_file: /src/dbus-broker/src/bus/policy.h
    - fields:
      - name: '*apparmor'
        type: BusAppArmorRegistry
      - name: '*selinux'
        type: BusSELinuxRegistry
      - name: '*default_batch'
        type: PolicyBatch
      - name: uid_range_tree
        type: CRBTree
      - name: uid_tree
        type: CRBTree
      - name: gid_tree
        type: CRBTree
      item_type: struct
      name: PolicyRegistry
      pos:
        line_end: 121
        line_start: 114
        source_file: /src/dbus-broker/src/bus/policy.h
    - fields:
      - name: '*apparmor'
        type: BusAppArmorRegistry
      - name: '*selinux'
        type: BusSELinuxRegistry
      - name: '*seclabel'
        type: char
      - name: n_batches
        type: size_t
      - name: '*batches[]'
        type: PolicyBatch
      item_type: struct
      name: PolicySnapshot
      pos:
        line_end: 135
        line_start: 129
        source_file: /src/dbus-broker/src/bus/policy.h
    typedefs: []
    union: []
- function_names:
  - policy_xmit_free
  - policy_xmit_new
  - policy_batch_name_compare
  - policy_batch_name_free
  - policy_batch_name_new
  - policy_batch_new
  - policy_batch_free
  - policy_batch_find_name
  - policy_batch_at_name
  - policy_batch_add_own
  - policy_batch_add_own_prefix
  - policy_batch_add_send
  - policy_batch_add_recv
  - policy_registry_node_compare
  - policy_registry_node_free
  - policy_registry_node_new
  - policy_registry_new
  - policy_registry_free
  - policy_registry_find_uid
  - policy_registry_find_gid
  - policy_registry_at_uidgid
  - policy_registry_at_uid
  - policy_registry_at_uid_range
  - policy_registry_at_gid
  - policy_registry_import_batch
  - policy_registry_import
  - policy_snapshot_new
  - policy_snapshot_free
  - policy_snapshot_dup
  - policy_snapshot_check_connect
  - policy_snapshot_check_own
  - policy_snapshot_check_xmit_name
  - c_list_for_each_entry
  - policy_snapshot_check_xmit
  - policy_snapshot_check_send
  - policy_snapshot_check_receive
  source_file: /src/dbus-broker/src/bus/policy.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: POLICY_TYPE_a_btbs
      pos:
        line_end: 27
        line_start: 18
        source_file: /src/dbus-broker/src/bus/policy.c
      type_or_value: "C_DVAR_T_ARRAY(                 \\\n                C_DVAR_T_TUPLE4(
        \       \\\n                        C_DVAR_T_b,     \\\n                        C_DVAR_T_t,
        \    \\\n                        C_DVAR_T_b,     \\\n                        C_DVAR_T_s
        \     \\\n                )                       \\\n        )"
    - item_type: preproc_def
      name: POLICY_TYPE_a_btssssuutt
      pos:
        line_end: 44
        line_start: 29
        source_file: /src/dbus-broker/src/bus/policy.c
      type_or_value: "C_DVAR_T_ARRAY(                 \\\n                C_DVAR_T_TUPLE10(
        \      \\\n                        C_DVAR_T_b,     \\\n                        C_DVAR_T_t,
        \    \\\n                        C_DVAR_T_s,     \\\n                        C_DVAR_T_s,
        \    \\\n                        C_DVAR_T_s,     \\\n                        C_DVAR_T_s,
        \    \\\n                        C_DVAR_T_u,     \\\n                        C_DVAR_T_u,
        \    \\\n                        C_DVAR_T_t,     \\\n                        C_DVAR_T_t
        \     \\\n                )                       \\\n        )"
    - item_type: preproc_def
      name: POLICY_TYPE
      pos:
        line_end: 82
        line_start: 46
        source_file: /src/dbus-broker/src/bus/policy.c
      type_or_value: "C_DVAR_T_TUPLE4(                                                        \\\n
        \               C_DVAR_T_ARRAY(                                                 \\\n
        \                       C_DVAR_T_TUPLE2(                                        \\\n
        \                               C_DVAR_T_u,                                     \\\n
        \                               C_DVAR_T_TUPLE5(                                \\\n
        \                                       C_DVAR_T_b,                             \\\n
        \                                       C_DVAR_T_t,                             \\\n
        \                                       POLICY_TYPE_a_btbs,                     \\\n
        \                                       POLICY_TYPE_a_btssssuutt,               \\\n
        \                                       POLICY_TYPE_a_btssssuutt                \\\n
        \                               )                                               \\\n
        \                       )                                                       \\\n
        \               ),                                                              \\\n
        \               C_DVAR_T_ARRAY(                                                 \\\n
        \                       C_DVAR_T_TUPLE4(                                        \\\n
        \                               C_DVAR_T_b,                                     \\\n
        \                               C_DVAR_T_u,                                     \\\n
        \                               C_DVAR_T_u,                                     \\\n
        \                               C_DVAR_T_TUPLE5(                                \\\n
        \                                       C_DVAR_T_b,                             \\\n
        \                                       C_DVAR_T_t,                             \\\n
        \                                       POLICY_TYPE_a_btbs,                     \\\n
        \                                       POLICY_TYPE_a_btssssuutt,               \\\n
        \                                       POLICY_TYPE_a_btssssuutt                \\\n
        \                               )                                               \\\n
        \                       )                                                       \\\n
        \               ),                                                              \\\n
        \               C_DVAR_T_ARRAY(                                                 \\\n
        \                       C_DVAR_T_TUPLE2(                                        \\\n
        \                               C_DVAR_T_s,                                     \\\n
        \                               C_DVAR_T_s                                      \\\n
        \                       )                                                       \\\n
        \               ),                                                              \\\n
        \               C_DVAR_T_b                                                      \\\n
        \       )"
    structs: []
    typedefs: []
    union: []
- function_names:
  - peer_dispatch_connection
  - peer_dispatch
  - peer_compare
  - peer_new_with_fd
  - peer_free
  - peer_spawn
  - peer_register
  - peer_unregister
  - peer_is_privileged
  - peer_request_name
  - peer_release_name
  - peer_release_name_ownership
  - peer_link_match
  - peer_add_match
  - peer_match_rule_to_name
  - peer_remove_match
  - peer_become_monitor
  - peer_stop_monitor
  - peer_flush_matches
  - peer_map_denied_error
  - peer_queue_unicast
  - peer_queue_reply
  - peer_registry_init
  - peer_registry_deinit
  - peer_registry_flush
  - peer_registry_find_peer
  source_file: /src/dbus-broker/src/bus/peer.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - name_change_init
  - name_change_deinit
  - name_ownership_compare
  - name_ownership_link
  - name_ownership_free
  - name_ownership_new
  - name_ownership_is_primary
  - name_ownership_release
  - name_ownership_update
  - name_compare
  - name_link
  - name_new
  - name_free
  - name_owner_init
  - name_owner_deinit
  - name_owner_get_stats
  - name_registry_init
  - name_registry_deinit
  - name_registry_get_activation_stats_for
  - name_registry_ref_name
  - name_registry_find_name
  - name_registry_request_name
  - name_registry_release_name
  - name_snapshot_new
  - name_snapshot_free
  source_file: /src/dbus-broker/src/bus/name.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - match_key_equal
  - match_keys_assign
  - match_copy_value
  - match_parse_key
  - match_keys_parse
  - match_keys_deinit
  - match_keys_init
  - match_keys_clone
  - match_keys_free
  - match_keys_new
  - match_string_prefix
  - match_keys_match_metadata
  - match_registry_by_path_compare
  - match_registry_by_path_new
  - match_registry_by_path_ref
  - match_registry_by_path_unref
  - match_registry_by_path_link
  - match_registry_by_interface_compare
  - match_registry_by_interface_new
  - match_registry_by_interface_ref
  - match_registry_by_interface_unref
  - match_registry_by_interface_link
  - match_registry_by_member_compare
  - match_registry_by_member_new
  - match_registry_by_member_ref
  - match_registry_by_member_unref
  - match_registry_by_member_link
  - match_keys_compare
  - match_registry_by_keys_compare
  - match_registry_by_keys_new
  - match_registry_by_keys_ref
  - match_registry_by_keys_unref
  - match_registry_by_keys_link
  - match_rule_compare
  - match_rule_free
  - match_rule_new
  - match_rule_user_ref
  - match_rule_user_unref
  - match_rule_link_by_keys
  - match_rule_link_by_member
  - match_rule_link_by_interface
  - match_rule_link_by_path
  - match_rule_link
  - match_rule_unlink
  - match_owner_init
  - match_owner_deinit
  - match_owner_get_stats
  - match_owner_move
  - match_owner_ref_rule
  - match_owner_find_rule
  - match_registry_init
  - match_registry_deinit
  - match_registry_by_keys_get_destinations
  - match_registry_by_member_get_destinations
  - match_registry_by_interface_get_destinations
  - match_registry_by_path_get_destinations
  - match_registry_get_destinations
  - match_registry_get_subscribers
  - match_registry_get_monitors
  - match_registry_by_keys_flush
  - match_registry_by_member_flush
  - match_registry_by_interface_flush
  - match_registry_by_path_flush
  - match_registry_flush
  - c_rbtree_for_each_entry_safe
  source_file: /src/dbus-broker/src/bus/match.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - REPLY_OWNER_INIT
  source_file: /src/dbus-broker/src/bus/reply.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: REPLY_REGISTRY_INIT
      pos:
        line_end: 40
        line_start: 37
        source_file: /src/dbus-broker/src/bus/reply.h
      type_or_value: "{                   \\\n                .reply_tree = C_RBTREE_INIT,
        \   \\\n        }"
    structs:
    - fields:
      - name: '*registry'
        type: ReplyRegistry
      - name: '*owner'
        type: ReplyOwner
      - name: charge
        type: UserCharge
      - name: id
        type: uint64_t
      - name: serial
        type: uint32_t
      - name: registry_node
        type: CRBNode
      - name: owner_link
        type: CList
      item_type: struct
      name: ReplySlot
      pos:
        line_end: 31
        line_start: 23
        source_file: /src/dbus-broker/src/bus/reply.h
    - fields:
      - name: reply_tree
        type: CRBTree
      item_type: struct
      name: ReplyRegistry
      pos:
        line_end: 35
        line_start: 33
        source_file: /src/dbus-broker/src/bus/reply.h
    - fields:
      - name: reply_list
        type: CList
      item_type: struct
      name: ReplyOwner
      pos:
        line_end: 43
        line_start: 41
        source_file: /src/dbus-broker/src/bus/reply.h
    typedefs: []
    union: []
- function_names:
  - resolve_owner
  - test_setup
  - test_release
  - test_queue
  - test_queue_counters
  - test_peak_counters
  - main
  source_file: /src/dbus-broker/src/bus/test-name.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/dbus-broker/src/bus/driver.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - DRIVER_T_MESSAGE
  - driver_write_bytes
  - driver_dvar_write_unique_name
  - driver_dvar_write_signature_out
  - driver_dvar_verify_signature_in
  - driver_write_reply_header
  - driver_write_signal_header
  - driver_error_to_string
  - driver_monitor
  - driver_send_unicast
  - driver_send_error
  - driver_send_reply_with_fds
  - driver_send_reply
  - driver_notify_name_acquired
  - driver_notify_name_lost
  - driver_notify_name_owner_changed
  - driver_name_owner_changed
  - driver_name_activation_failed
  - driver_name_activated
  - driver_end_read
  - driver_method_hello
  - driver_method_request_name
  - driver_method_release_name
  - driver_method_list_queued_owners
  - driver_method_list_names
  - driver_method_list_activatable_names
  - driver_method_name_has_owner
  - driver_method_start_service_by_name
  - driver_method_update_activation_environment
  - driver_method_get_name_owner
  - driver_method_get_connection_unix_user
  - driver_method_get_connection_unix_process_id
  - driver_fetch_credentials
  - driver_append_credentials
  - driver_method_get_connection_credentials
  - driver_method_get_adt_audit_session_data
  - driver_method_get_connection_selinux_security_context
  - driver_method_add_match
  - driver_method_remove_match
  - driver_reload_config_completed
  - driver_reload_config_invalid
  - driver_method_reload_config
  - driver_method_get_id
  - driver_method_introspect
  - driver_method_become_monitor
  - driver_method_ping
  - driver_method_get_machine_id
  - driver_append_property_features
  - driver_append_property_interfaces
  - driver_method_get
  - driver_method_set
  - driver_method_get_all
  - driver_append_peer_accounting_stats
  - driver_append_peer_accounting
  - driver_append_user_accounting
  - driver_method_get_stats
  - driver_method_get_connection_stats
  - driver_method_get_all_match_rules
  - driver_handle_method
  - driver_dispatch_method
  - driver_map_denied_error
  - driver_dispatch_interface
  - driver_goodbye
  - driver_forward_unicast
  - driver_forward_broadcast
  - driver_dispatch_internal
  - driver_dispatch
  source_file: /src/dbus-broker/src/bus/driver.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: DRIVER_CREDENTIALS_NULL
      pos:
        line_end: 46
        line_start: 42
        source_file: /src/dbus-broker/src/bus/driver.c
      type_or_value: "{       \\\n                .pid_fd = -1,           \\\n                .uid
        = -1,              \\\n        }"
    structs:
    - fields:
      - name: pid
        type: pid_t
      - name: pid_fd
        type: int
      - name: uid
        type: uid_t
      - name: '*gids'
        type: gid_t
      - name: n_gids
        type: size_t
      - name: '*seclabel'
        type: char
      - name: n_seclabel
        type: size_t
      item_type: struct
      name: DriverCredentials
      pos:
        line_end: 40
        line_start: 32
        source_file: /src/dbus-broker/src/bus/driver.c
    - fields:
      - name: '*name'
        type: char
      - name: needs_registration
        type: bool
      - name: '*path'
        type: char
      - name: fn
        type: DriverMethodFn
      - name: '*in'
        type: CDVarType
      - name: '*out'
        type: CDVarType
      - name: writes_own_header
        type: bool
      item_type: struct
      name: DriverMethod
      pos:
        line_end: 55
        line_start: 47
        source_file: /src/dbus-broker/src/bus/driver.c
    - fields:
      - name: '*name'
        type: char
      - name: '*methods'
        type: DriverMethod
      item_type: struct
      name: DriverInterface
      pos:
        line_end: 60
        line_start: 57
        source_file: /src/dbus-broker/src/bus/driver.c
    typedefs:
    - item_type: typedef
      name: (*DriverMethodFn) (Peer *peer, const char *path, CDVar *var_in, uint32_t
        serial, CDVar *var_out)
      pos:
        line_end: 30
        line_start: 30
        source_file: /src/dbus-broker/src/bus/driver.c
      type: int
    union: []
- function_names:
  - activation_request_free
  - activation_message_free
  - activation_init
  - activation_deinit
  - activation_get_stats_for
  - activation_request
  - activation_queue_message
  - activation_queue_request
  source_file: /src/dbus-broker/src/bus/activation.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_arg
  - test_parse_key
  - test_args
  - test_parse_value
  - test_validity
  - test_splitting
  - test_wildcard
  - test_validate_keys
  - test_eavesdrop
  - test_match
  - test_individual_matches
  - test_iterator
  - test_counters
  - main
  source_file: /src/dbus-broker/src/bus/test-match.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
