---
Fuzzer filename: '/src/libiec61850/build/../fuzz/fuzz_mms_server_decode_mms_pdu.c'
All functions:
  Function list name: All functions
  Elements:
    - functionName:    setupModel1
      functionSourceFile: '/src/libiec61850/build/../fuzz/fuzz_mms_server_decode_mms_pdu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          73
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - CDC_ENS_create
        - CDC_HST_create
        - CDC_SAV_create
        - CDC_SPS_create
        - DataSetEntry_create
        - DataSet_create
        - IedModel_create
        - LogicalDevice_create
        - LogicalNode_create
        - ModelNode_getChild
        - ReportControlBlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:11,23'
          Dst:             IedModel_create
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:13,31'
          Dst:             LogicalDevice_create
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:15,25'
          Dst:             LogicalNode_create
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:17,28'
          Dst:             CDC_ENS_create
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:18,31'
          Dst:             CDC_ENS_create
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:21,26'
          Dst:             LogicalNode_create
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:22,31'
          Dst:             CDC_SAV_create
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:24,56'
          Dst:             ModelNode_getChild
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:25,60'
          Dst:             ModelNode_getChild
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:28,27'
          Dst:             LogicalNode_create
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:30,32'
          Dst:             CDC_SPS_create
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:31,32'
          Dst:             CDC_HST_create
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:33,24'
          Dst:             DataSet_create
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:34,5'
          Dst:             DataSetEntry_create
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:38,5'
          Dst:             ReportControlBlock_create
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:39,5'
          Dst:             ReportControlBlock_create
    - functionName:    LLVMFuzzerTestOneInput
      functionSourceFile: '/src/libiec61850/build/../fuzz/fuzz_mms_server_decode_mms_pdu.c'
      linkageType:     externalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IedConnection_close
        - IedConnection_connect
        - IedConnection_create
        - IedConnection_destroy
        - IedConnection_getMmsConnection
        - IedModel_destroy
        - IedServer_create
        - IedServer_destroy
        - IedServer_start
        - IedServer_stop
        - MmsConnection_sendRawData
        - setupModel1
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:46,23'
          Dst:             setupModel1
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:48,27'
          Dst:             IedServer_create
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:50,5'
          Dst:             IedServer_start
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:54,22'
          Dst:             IedConnection_create
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:56,2'
          Dst:             IedConnection_connect
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:58,28'
          Dst:             IedConnection_getMmsConnection
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:62,5'
          Dst:             MmsConnection_sendRawData
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:64,2'
          Dst:             IedConnection_close
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:66,2'
          Dst:             IedConnection_destroy
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:68,5'
          Dst:             IedServer_stop
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:69,5'
          Dst:             IedServer_destroy
        - Src:             '../fuzz/fuzz_mms_server_decode_mms_pdu.c:71,5'
          Dst:             IedModel_destroy
    - functionName:    addToOutstandingCalls
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 288
      functionLinenumberEnd: 312
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          146
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - Hal_getMonotonicTimeInMs
        - Semaphore_post
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:291,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:299,49'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:304,13'
          Dst:             Semaphore_post
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:309,5'
          Dst:             Semaphore_post
    - functionName:    getNameListHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2196
      functionLinenumberEnd: 2207
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2206,5'
          Dst:             Semaphore_post
    - functionName:    removeFromOutstandingCalls
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          88
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:319,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:333,5'
          Dst:             Semaphore_post
    - functionName:    convertRejectCodesToMmsError
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 412
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          96
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    convertServiceErrorToMmsError
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 543
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         40
      ICount:          187
      EdgeCount:       74
      CyclomaticComplexity: 36
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_connection.c:419,5'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/client/mms_client_connection.c:430,9'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/client/mms_client_connection.c:462,9'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/client/mms_client_connection.c:483,9'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/client/mms_client_connection.c:504,9'
          Branch Sides:    []
      Callsites:       []
    - functionName:    checkForOutstandingCall
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          94
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:267,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:275,17'
          Dst:             Semaphore_post
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:281,5'
          Dst:             Semaphore_post
    - functionName:    handleUnconfirmedMmsPdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         62
      ICount:          555
      EdgeCount:       82
      CyclomaticComplexity: 22
      functionsReached:
        - ByteBuffer_getBuffer
        - ByteBuffer_getSize
        - Memory_free
        - MmsValue_delete
        - MmsValue_getElement
        - MmsValue_setElement
        - StringUtils_createStringFromBuffer
        - ber_decode
        - mmsClient_parseListOfAccessResults
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:75,35'
          Dst:             ByteBuffer_getBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:75,66'
          Dst:             ByteBuffer_getSize
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:74,31'
          Dst:             ber_decode
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:104,54'
          Dst:             StringUtils_createStringFromBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:108,48'
          Dst:             mmsClient_parseListOfAccessResults
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:113,29'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:132,44'
          Dst:             mmsClient_parseListOfAccessResults
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:161,53'
          Dst:             MmsValue_getElement
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:168,45'
          Dst:             MmsValue_setElement
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:205,53'
          Dst:             MmsValue_getElement
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:212,45'
          Dst:             MmsValue_setElement
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:222,29'
          Dst:             MmsValue_delete
    - functionName:    handleAsyncResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 716
      functionLinenumberEnd: 1071
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         175
      ICount:          1197
      EdgeCount:       233
      CyclomaticComplexity: 60
      functionsReached:
        - ByteBuffer_getBuffer
        - ByteBuffer_getSize
        - Memory_free
        - mmsClient_parseDefineNamedVariableResponse
        - mmsClient_parseDeleteNamedVariableListResponse
        - mmsClient_parseFileDirectoryResponse
        - mmsClient_parseGetNameListResponse
        - mmsClient_parseGetNamedVariableListAttributesResponse
        - mmsClient_parseGetVariableAccessAttributesResponse
        - mmsClient_parseIdentifyResponse
        - mmsClient_parseReadJournalResponse
        - mmsClient_parseReadResponse
        - mmsClient_parseStatusResponse
        - mmsClient_parseWriteMultipleItemsResponse
        - mmsClient_parseWriteResponse
        - mmsMsg_parseFileOpenResponse
        - mmsMsg_parseFileReadResponse
        - removeFromOutstandingCalls
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:730,35'
          Dst:             mmsClient_parseReadResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:753,35'
          Dst:             mmsClient_parseReadResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:775,46'
          Dst:             mmsClient_parseWriteResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:797,17'
          Dst:             mmsClient_parseWriteMultipleItemsResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:818,41'
          Dst:             mmsClient_parseGetNamedVariableListAttributesResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:840,18'
          Dst:             mmsClient_parseDefineNamedVariableResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:864,17'
          Dst:             mmsClient_parseDeleteNamedVariableListResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:891,50'
          Dst:             mmsClient_parseGetVariableAccessAttributesResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:913,17'
          Dst:             mmsClient_parseStatusResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:930,17'
          Dst:             mmsClient_parseIdentifyResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:953,17'
          Dst:             mmsClient_parseReadJournalResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:974,32'
          Dst:             mmsClient_parseGetNameListResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:999,46'
          Dst:             ByteBuffer_getBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:999,86'
          Dst:             ByteBuffer_getSize
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:999,17'
          Dst:             mmsMsg_parseFileOpenResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1025,46'
          Dst:             ByteBuffer_getBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1025,86'
          Dst:             ByteBuffer_getSize
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1025,17'
          Dst:             mmsMsg_parseFileReadResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1043,17'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1064,17'
          Dst:             mmsClient_parseFileDirectoryResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1070,9'
          Dst:             removeFromOutstandingCalls
    - functionName:    mmsIsoCallback
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1075
      functionLinenumberEnd: 1572
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         150
      ICount:          946
      EdgeCount:       196
      CyclomaticComplexity: 48
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
        - ByteBuffer_getBuffer
        - ByteBuffer_getSize
        - Hal_getMonotonicTimeInMs
        - IsoClientConnection_allocateTransmitBuffer
        - IsoClientConnection_release
        - IsoClientConnection_sendMessage
        - Semaphore_post
        - Semaphore_wait
        - checkForOutstandingCall
        - convertRejectCodesToMmsError
        - convertServiceErrorToMmsError
        - handleAsyncResponse
        - handleUnconfirmedMmsPdu
        - mmsClient_handleFileCloseRequest
        - mmsClient_handleFileOpenRequest
        - mmsClient_handleFileReadRequest
        - mmsClient_parseInitiateResponse
        - mmsMsg_parseConfirmedErrorPDU
        - mmsMsg_parseRejectPDU
        - setConnectionState
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_connection.c:1473,17'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/client/mms_client_connection.c:1526,17'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1086,32'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1092,13'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1096,17'
          Dst:             Semaphore_post
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1101,25'
          Dst:             handleAsyncResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1103,21'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1107,21'
          Dst:             Semaphore_post
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1111,17'
          Dst:             Semaphore_post
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1132,9'
          Dst:             setConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1144,17'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1148,21'
          Dst:             Semaphore_post
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1151,25'
          Dst:             handleAsyncResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1153,21'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1158,17'
          Dst:             Semaphore_post
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1170,9'
          Dst:             setConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1176,13'
          Dst:             ByteBuffer_getSize
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1181,20'
          Dst:             ByteBuffer_getBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1202,17'
          Dst:             mmsClient_parseInitiateResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1204,17'
          Dst:             setConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1208,17'
          Dst:             setConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1215,13'
          Dst:             setConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1230,9'
          Dst:             setConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1237,9'
          Dst:             handleUnconfirmedMmsPdu
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1259,9'
          Dst:             IsoClientConnection_release
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1285,13'
          Dst:             mmsMsg_parseConfirmedErrorPDU
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1296,43'
          Dst:             checkForOutstandingCall
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1300,36'
          Dst:             convertServiceErrorToMmsError
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1304,25'
          Dst:             handleAsyncResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1342,13'
          Dst:             mmsMsg_parseRejectPDU
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1349,43'
          Dst:             checkForOutstandingCall
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1353,36'
          Dst:             convertRejectCodesToMmsError
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1357,25'
          Dst:             handleAsyncResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1383,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1391,22'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1396,21'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1404,39'
          Dst:             checkForOutstandingCall
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1410,21'
          Dst:             handleAsyncResponse
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1440,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1459,22'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1482,48'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1484,25'
          Dst:             mmsClient_handleFileOpenRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1486,25'
          Dst:             IsoClientConnection_sendMessage
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1495,48'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1497,25'
          Dst:             mmsClient_handleFileReadRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1499,25'
          Dst:             IsoClientConnection_sendMessage
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1508,48'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1510,25'
          Dst:             mmsClient_handleFileCloseRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1512,25'
          Dst:             IsoClientConnection_sendMessage
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1529,32'
          Dst:             BerDecoder_decodeUint32
    - functionName:    setConnectionState
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:44,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:46,5'
          Dst:             Semaphore_post
    - functionName:    mmsMsg_parseConfirmedErrorPDU
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 598
      functionLinenumberEnd: 655
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          189
      EdgeCount:       38
      CyclomaticComplexity: 9
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
        - parseServiceError
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_connection.c:623,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:608,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:618,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:629,29'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:636,22'
          Dst:             parseServiceError
    - functionName:    mmsMsg_parseRejectPDU
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 659
      functionLinenumberEnd: 712
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          188
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - BerDecoder_decodeInt32
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:670,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:680,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:691,29'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:696,29'
          Dst:             BerDecoder_decodeInt32
    - functionName:    parseServiceError
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 548
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          148
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_connection.c:560,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:555,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:565,26'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:571,36'
          Dst:             BerDecoder_decodeUint32
    - functionName:    MmsVariableAccessSpecification_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5015
      functionLinenumberEnd: 5029
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          74
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - Memory_free
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:5019,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:5022,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:5025,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:5027,9'
          Dst:             Memory_free
    - functionName:    MmsVariableAccessSpecification_createAlternateAccess
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4998
      functionLinenumberEnd: 5010
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:5000,13'
          Dst:             Memory_malloc
    - functionName:    MmsVariableAccessSpecification_create
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4980
      functionLinenumberEnd: 4992
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_malloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4982,13'
          Dst:             Memory_malloc
    - functionName:    MmsServerIdentity_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4962
      functionLinenumberEnd: 4976
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          74
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - Memory_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4966,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4969,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4972,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4974,9'
          Dst:             Memory_free
    - functionName:    sendMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 380
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IsoClientConnection_sendMessage
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:379,5'
          Dst:             IsoClientConnection_sendMessage
    - functionName:    MmsConnection_sendRawData
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4939
      functionLinenumberEnd: 4957
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          65
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ByteBuffer_append
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - sendMessage
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4940,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4947,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4949,5'
          Dst:             ByteBuffer_append
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4951,5'
          Dst:             sendMessage
    - functionName:    getConnectionState
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    38
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:57,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:59,5'
          Dst:             Semaphore_post
    - functionName:    MmsConnection_writeNamedVariableListAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4908
      functionLinenumberEnd: 4934
      functionDepth:   0
      returnType:      void
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          109
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createWriteRequestNamedVariableList
        - sendAsyncRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4909,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4916,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4918,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4923,5'
          Dst:             mmsClient_createWriteRequestNamedVariableList
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4928,20'
          Dst:             sendAsyncRequest
    - functionName:    getNextInvokeId
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    32
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:250,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:257,5'
          Dst:             Semaphore_post
    - functionName:    sendAsyncRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 385
      functionLinenumberEnd: 397
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - IsoClientConnection_releaseTransmitBuffer
        - addToOutstandingCalls
        - sendMessage
      functionUses:    32
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:386,9'
          Dst:             addToOutstandingCalls
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:389,9'
          Dst:             IsoClientConnection_releaseTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:394,5'
          Dst:             sendMessage
    - functionName:    MmsConnection_writeNamedVariableList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4868
      functionLinenumberEnd: 4902
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          106
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - LinkedList_destroyDeep
        - MmsConnection_writeNamedVariableListAsync
        - MmsValue_delete
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - writeMultipleVariablesHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4873,21'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4877,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4879,5'
          Dst:             MmsConnection_writeNamedVariableListAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4879,5'
          Dst:             writeMultipleVariablesHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4883,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4890,13'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4890,13'
          Dst:             MmsValue_delete
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4901,5'
          Dst:             Semaphore_destroy
    - functionName:    writeMultipleVariablesHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4707
      functionLinenumberEnd: 4717
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4716,5'
          Dst:             Semaphore_post
    - functionName:    MmsConnection_writeArrayElementsAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4835
      functionLinenumberEnd: 4861
      functionDepth:   0
      returnType:      void
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createWriteRequestArray
        - sendAsyncRequest
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4836,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4843,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4845,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4850,5'
          Dst:             mmsClient_createWriteRequestArray
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4855,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_writeArrayElements
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4802
      functionLinenumberEnd: 4827
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          82
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_writeArrayElementsAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - writeVariableHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4807,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4811,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4813,5'
          Dst:             MmsConnection_writeArrayElementsAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4813,5'
          Dst:             writeVariableHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4817,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4822,5'
          Dst:             Semaphore_destroy
    - functionName:    writeVariableHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4489
      functionLinenumberEnd: 4499
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4498,5'
          Dst:             Semaphore_post
    - functionName:    MmsConnection_writeMultipleVariablesAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4763
      functionLinenumberEnd: 4795
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          114
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createWriteMultipleItemsRequest
        - sendAsyncRequest
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4764,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4771,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4773,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4778,9'
          Dst:             mmsClient_createWriteMultipleItemsRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4783,24'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_writeMultipleVariables
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4724
      functionLinenumberEnd: 4757
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - LinkedList_destroyDeep
        - MmsConnection_writeMultipleVariablesAsync
        - MmsValue_delete
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - writeMultipleVariablesHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4729,21'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4733,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4735,5'
          Dst:             MmsConnection_writeMultipleVariablesAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4735,5'
          Dst:             writeMultipleVariablesHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4739,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4746,13'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4746,13'
          Dst:             MmsValue_delete
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4756,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_writeVariableComponentAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4669
      functionLinenumberEnd: 4695
      functionDepth:   0
      returnType:      void
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          107
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createWriteRequestComponent
        - sendAsyncRequest
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4670,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4677,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4679,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4684,5'
          Dst:             mmsClient_createWriteRequestComponent
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4689,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_writeVariableComponent
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4637
      functionLinenumberEnd: 4662
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_writeVariableComponentAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - writeVariableHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4642,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4646,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4648,5'
          Dst:             MmsConnection_writeVariableComponentAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4648,5'
          Dst:             writeVariableHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4652,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4657,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_writeSingleArrayElementWithComponentAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4603
      functionLinenumberEnd: 4630
      functionDepth:   0
      returnType:      void
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createWriteRequestAlternateAccessSingleIndexComponent
        - sendAsyncRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4604,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4611,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4613,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4618,5'
          Dst:             mmsClient_createWriteRequestAlternateAccessSingleIndexComponent
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4624,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_writeSingleArrayElementWithComponent
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4570
      functionLinenumberEnd: 4595
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          82
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_writeSingleArrayElementWithComponentAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - writeVariableHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4575,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4579,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4581,5'
          Dst:             MmsConnection_writeSingleArrayElementWithComponentAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4581,5'
          Dst:             writeVariableHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4585,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4590,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_writeVariableAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4537
      functionLinenumberEnd: 4563
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          104
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createWriteRequest
        - sendAsyncRequest
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4538,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4545,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4547,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4552,5'
          Dst:             mmsClient_createWriteRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4557,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_writeVariable
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4505
      functionLinenumberEnd: 4530
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_writeVariableAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - writeVariableHandler
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4510,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4514,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4516,5'
          Dst:             MmsConnection_writeVariableAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4516,5'
          Dst:             writeVariableHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4520,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4525,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_obtainFileAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4445
      functionLinenumberEnd: 4477
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          115
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - StringUtils_copyString
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createObtainFileRequest
        - sendAsyncRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4448,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4455,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4457,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4462,5'
          Dst:             mmsClient_createObtainFileRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4467,24'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4471,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_obtainFile
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4400
      functionLinenumberEnd: 4433
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_obtainFileAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - fileOperationHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4407,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4411,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4413,5'
          Dst:             MmsConnection_obtainFileAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4413,5'
          Dst:             fileOperationHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4417,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4422,5'
          Dst:             Semaphore_destroy
    - functionName:    fileOperationHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3930
      functionLinenumberEnd: 3940
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3939,5'
          Dst:             Semaphore_post
    - functionName:    MmsConnection_fileRenameAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4360
      functionLinenumberEnd: 4388
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createFileRenameRequest
        - sendAsyncRequest
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4363,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4370,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4372,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4377,5'
          Dst:             mmsClient_createFileRenameRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4382,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_fileRename
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4323
      functionLinenumberEnd: 4355
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_fileRenameAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - fileOperationHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4330,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4334,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4336,5'
          Dst:             MmsConnection_fileRenameAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4336,5'
          Dst:             fileOperationHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4340,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4345,5'
          Dst:             Semaphore_destroy
    - functionName:    getFileDirHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4219
      functionLinenumberEnd: 4236
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - int
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Semaphore_post
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4231,9'
          Dst:             Semaphore_post
    - functionName:    MmsConnection_getFileDirectoryAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4283
      functionLinenumberEnd: 4311
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createFileDirectoryRequest
        - sendAsyncRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4286,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4293,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4295,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4300,5'
          Dst:             mmsClient_createFileDirectoryRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4305,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_getFileDirectory
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4241
      functionLinenumberEnd: 4270
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_getFileDirectoryAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - getFileDirHandler
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4252,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4254,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4256,5'
          Dst:             MmsConnection_getFileDirectoryAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4256,5'
          Dst:             getFileDirHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4260,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4265,5'
          Dst:             Semaphore_destroy
    - functionName:    fileReadHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4109
      functionLinenumberEnd: 4123
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          68
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Semaphore_post
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4122,5'
          Dst:             Semaphore_post
    - functionName:    MmsConnection_fileReadAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4170
      functionLinenumberEnd: 4197
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          99
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createFileReadRequest
        - sendAsyncRequest
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4173,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4179,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4181,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4186,5'
          Dst:             mmsClient_createFileReadRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4191,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_fileRead
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4128
      functionLinenumberEnd: 4157
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_fileReadAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - fileReadHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4135,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4141,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4143,5'
          Dst:             MmsConnection_fileReadAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4143,5'
          Dst:             fileReadHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4147,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4152,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_fileDeleteAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4059
      functionLinenumberEnd: 4087
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          98
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createFileDeleteRequest
        - sendAsyncRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4062,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4069,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4071,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4076,5'
          Dst:             mmsClient_createFileDeleteRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4081,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_fileDelete
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4021
      functionLinenumberEnd: 4054
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_fileDeleteAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - fileOperationHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4028,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4032,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4034,5'
          Dst:             MmsConnection_fileDeleteAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4034,5'
          Dst:             fileOperationHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4038,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4043,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_fileCloseAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3981
      functionLinenumberEnd: 4009
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          98
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createFileCloseRequest
        - sendAsyncRequest
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3984,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3991,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3993,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3998,5'
          Dst:             mmsClient_createFileCloseRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:4003,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_fileClose
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3944
      functionLinenumberEnd: 3977
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_fileCloseAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - fileOperationHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3951,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3955,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3957,5'
          Dst:             MmsConnection_fileCloseAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3957,5'
          Dst:             fileOperationHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3961,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3966,5'
          Dst:             Semaphore_destroy
    - functionName:    fileOpenHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3817
      functionLinenumberEnd: 3829
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - int
        - int
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3828,5'
          Dst:             Semaphore_post
    - functionName:    MmsConnection_fileOpenAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3883
      functionLinenumberEnd: 3911
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createFileOpenRequest
        - sendAsyncRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3886,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3893,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3895,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3900,5'
          Dst:             mmsClient_createFileOpenRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3905,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_fileOpen
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3835
      functionLinenumberEnd: 3870
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          111
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - MmsConnection_fileOpenAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - fileOpenHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3842,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3848,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3850,5'
          Dst:             MmsConnection_fileOpenAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3850,5'
          Dst:             fileOpenHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3854,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3859,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_readJournalStartAfterAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3769
      functionLinenumberEnd: 3803
      functionDepth:   0
      returnType:      void
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          139
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - MmsValue_getType
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createReadJournalRequestStartAfter
        - sendAsyncRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3770,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3777,10'
          Dst:             MmsValue_getType
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3778,14'
          Dst:             MmsValue_getType
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3785,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3787,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3792,5'
          Dst:             mmsClient_createReadJournalRequestStartAfter
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3797,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_readJournalStartAfter
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3734
      functionLinenumberEnd: 3763
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          97
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsConnection_readJournalStartAfterAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - readJournalHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3739,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3744,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3746,5'
          Dst:             MmsConnection_readJournalStartAfterAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3746,5'
          Dst:             readJournalHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3750,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3758,5'
          Dst:             Semaphore_destroy
    - functionName:    readJournalHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3642
      functionLinenumberEnd: 3653
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3652,5'
          Dst:             Semaphore_post
    - functionName:    MmsConnection_readJournalTimeRangeAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3694
      functionLinenumberEnd: 3728
      functionDepth:   0
      returnType:      void
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          139
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - MmsValue_getType
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createReadJournalRequestWithTimeRange
        - sendAsyncRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3695,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3702,10'
          Dst:             MmsValue_getType
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3703,14'
          Dst:             MmsValue_getType
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3710,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3712,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3717,5'
          Dst:             mmsClient_createReadJournalRequestWithTimeRange
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3722,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_readJournalTimeRange
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3659
      functionLinenumberEnd: 3688
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          97
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsConnection_readJournalTimeRangeAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - readJournalHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3664,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3669,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3671,5'
          Dst:             MmsConnection_readJournalTimeRangeAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3671,5'
          Dst:             readJournalHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3675,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3683,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsJournalVariable_getValue
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3628
      functionLinenumberEnd: 3629
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsJournalVariable_getTag
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3622
      functionLinenumberEnd: 3623
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsJournalEntry_getJournalVariables
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3616
      functionLinenumberEnd: 3617
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsJournalEntry_getOccurenceTime
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3610
      functionLinenumberEnd: 3611
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsJournalEntry_getEntryID
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3604
      functionLinenumberEnd: 3605
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsJournalVariable_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3579
      functionLinenumberEnd: 3586
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
        - MmsValue_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3582,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3583,9'
          Dst:             MmsValue_delete
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3584,9'
          Dst:             Memory_free
    - functionName:    MmsJournalEntry_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3590
      functionLinenumberEnd: 3600
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_destroyDeep
        - Memory_free
        - MmsJournalVariable_destroy
        - MmsValue_delete
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3593,9'
          Dst:             MmsValue_delete
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3594,9'
          Dst:             MmsValue_delete
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3595,9'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3595,9'
          Dst:             MmsJournalVariable_destroy
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3598,9'
          Dst:             Memory_free
    - functionName:    getServerStatusHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3496
      functionLinenumberEnd: 3507
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3506,5'
          Dst:             Semaphore_post
    - functionName:    MmsConnection_getServerStatusAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3548
      functionLinenumberEnd: 3574
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          100
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createStatusRequest
        - sendAsyncRequest
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3549,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3556,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3558,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3563,5'
          Dst:             mmsClient_createStatusRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3568,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_getServerStatus
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3513
      functionLinenumberEnd: 3543
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          103
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - MmsConnection_getServerStatusAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - getServerStatusHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3518,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3523,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3525,5'
          Dst:             MmsConnection_getServerStatusAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3525,5'
          Dst:             getServerStatusHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3529,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3539,5'
          Dst:             Semaphore_destroy
    - functionName:    identifyHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3405
      functionLinenumberEnd: 3419
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          60
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_malloc
        - Semaphore_post
        - StringUtils_copyString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3412,49'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3413,40'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3414,39'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3415,38'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3418,5'
          Dst:             Semaphore_post
    - functionName:    MmsConnection_identifyAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3457
      functionLinenumberEnd: 3483
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          95
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createIdentifyRequest
        - sendAsyncRequest
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3458,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3465,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3467,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3472,5'
          Dst:             mmsClient_createIdentifyRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3477,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_identify
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3424
      functionLinenumberEnd: 3451
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_identifyAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - identifyHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3431,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3435,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3437,5'
          Dst:             MmsConnection_identifyAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3437,5'
          Dst:             identifyHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3441,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3446,5'
          Dst:             Semaphore_destroy
    - functionName:    getAccessAttrHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3320
      functionLinenumberEnd: 3330
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3329,5'
          Dst:             Semaphore_post
    - functionName:    MmsConnection_getVariableAccessAttributesAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3367
      functionLinenumberEnd: 3393
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createGetVariableAccessAttributesRequest
        - sendAsyncRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3368,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3375,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3377,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3382,5'
          Dst:             mmsClient_createGetVariableAccessAttributesRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3387,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_getVariableAccessAttributes
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3335
      functionLinenumberEnd: 3360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_getVariableAccessAttributesAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - getAccessAttrHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3342,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3344,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3346,5'
          Dst:             MmsConnection_getVariableAccessAttributesAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3346,5'
          Dst:             getAccessAttrHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3350,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3355,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_deleteAssociationSpecificNamedVariableListAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3281
      functionLinenumberEnd: 3308
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          99
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createDeleteAssociationSpecificNamedVariableListRequest
        - sendAsyncRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3282,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3289,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3291,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3296,5'
          Dst:             mmsClient_createDeleteAssociationSpecificNamedVariableListRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3302,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_deleteAssociationSpecificNamedVariableList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3250
      functionLinenumberEnd: 3275
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_deleteAssociationSpecificNamedVariableListAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - defineNVLHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3257,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3259,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3261,5'
          Dst:             MmsConnection_deleteAssociationSpecificNamedVariableListAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3261,5'
          Dst:             defineNVLHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3265,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3270,5'
          Dst:             Semaphore_destroy
    - functionName:    defineNVLHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3049
      functionLinenumberEnd: 3059
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3058,5'
          Dst:             Semaphore_post
    - functionName:    MmsConnection_deleteNamedVariableListAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3218
      functionLinenumberEnd: 3244
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          102
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createDeleteNamedVariableListRequest
        - sendAsyncRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3219,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3226,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3228,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3233,5'
          Dst:             mmsClient_createDeleteNamedVariableListRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3238,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_deleteNamedVariableList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3187
      functionLinenumberEnd: 3212
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_deleteNamedVariableListAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - defineNVLHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3194,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3196,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3198,5'
          Dst:             MmsConnection_deleteNamedVariableListAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3198,5'
          Dst:             defineNVLHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3202,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3207,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_defineNamedVariableListAssociationSpecificAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3154
      functionLinenumberEnd: 3181
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createDefineNamedVariableListRequest
        - sendAsyncRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3155,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3162,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3164,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3169,5'
          Dst:             mmsClient_createDefineNamedVariableListRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3175,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_defineNamedVariableListAssociationSpecific
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3126
      functionLinenumberEnd: 3148
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_defineNamedVariableListAssociationSpecificAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - defineNVLHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3131,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3133,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3135,5'
          Dst:             MmsConnection_defineNamedVariableListAssociationSpecificAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3135,5'
          Dst:             defineNVLHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3140,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3144,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_defineNamedVariableListAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3093
      functionLinenumberEnd: 3120
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          104
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createDefineNamedVariableListRequest
        - sendAsyncRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3094,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3101,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3103,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3108,5'
          Dst:             mmsClient_createDefineNamedVariableListRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3114,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_defineNamedVariableList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3065
      functionLinenumberEnd: 3087
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_defineNamedVariableListAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - defineNVLHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3070,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3072,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3074,5'
          Dst:             MmsConnection_defineNamedVariableListAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3074,5'
          Dst:             defineNVLHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3079,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3083,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_readNamedVariableListDirectoryAssociationSpecificAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3010
      functionLinenumberEnd: 3037
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          98
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createGetNamedVariableListAttributesRequestAssociationSpecific
        - sendAsyncRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3011,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3018,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3020,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3025,5'
          Dst:             mmsClient_createGetNamedVariableListAttributesRequestAssociationSpecific
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:3031,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_readNamedVariableListDirectoryAssociationSpecific
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2972
      functionLinenumberEnd: 3003
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          85
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsConnection_readNamedVariableListDirectoryAssociationSpecificAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - readNVLDirectoryHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2975,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2977,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2985,5'
          Dst:             MmsConnection_readNamedVariableListDirectoryAssociationSpecificAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2985,5'
          Dst:             readNVLDirectoryHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2990,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2998,5'
          Dst:             Semaphore_destroy
    - functionName:    readNVLDirectoryHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2885
      functionLinenumberEnd: 2896
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2895,5'
          Dst:             Semaphore_post
    - functionName:    MmsConnection_readNamedVariableListDirectoryAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2939
      functionLinenumberEnd: 2966
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createGetNamedVariableListAttributesRequest
        - sendAsyncRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2940,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2947,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2949,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2954,5'
          Dst:             mmsClient_createGetNamedVariableListAttributesRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2960,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_readNamedVariableListDirectory
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2901
      functionLinenumberEnd: 2932
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsConnection_readNamedVariableListDirectoryAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - readNVLDirectoryHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2904,33'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2906,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2914,5'
          Dst:             MmsConnection_readNamedVariableListDirectoryAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2914,5'
          Dst:             readNVLDirectoryHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2919,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2927,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_readNamedVariableListValuesAssociationSpecificAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2845
      functionLinenumberEnd: 2872
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          103
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createReadAssociationSpecificNamedVariableListRequest
        - sendAsyncRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2846,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2853,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2855,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2860,5'
          Dst:             mmsClient_createReadAssociationSpecificNamedVariableListRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2866,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_readNamedVariableListValuesAssociationSpecific
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2810
      functionLinenumberEnd: 2838
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_readNamedVariableListValuesAssociationSpecificAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - readVariableHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2816,21'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2820,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2822,5'
          Dst:             MmsConnection_readNamedVariableListValuesAssociationSpecificAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2822,5'
          Dst:             readVariableHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2827,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2833,5'
          Dst:             Semaphore_destroy
    - functionName:    readVariableHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2379
      functionLinenumberEnd: 2389
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2388,5'
          Dst:             Semaphore_post
    - functionName:    MmsConnection_readNamedVariableListValuesAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2775
      functionLinenumberEnd: 2802
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          106
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createReadNamedVariableListRequest
        - sendAsyncRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2776,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2783,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2785,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2790,5'
          Dst:             mmsClient_createReadNamedVariableListRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2796,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_readNamedVariableListValues
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2740
      functionLinenumberEnd: 2768
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          82
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_readNamedVariableListValuesAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - readVariableHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2746,21'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2750,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2752,5'
          Dst:             MmsConnection_readNamedVariableListValuesAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2752,5'
          Dst:             readVariableHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2757,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2763,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_readMultipleVariablesAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2701
      functionLinenumberEnd: 2733
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          119
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createReadRequestMultipleValues
        - sendAsyncRequest
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2702,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2709,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2711,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2716,9'
          Dst:             mmsClient_createReadRequestMultipleValues
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2721,24'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_readMultipleVariables
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2666
      functionLinenumberEnd: 2694
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          77
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_readMultipleVariablesAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - readVariableHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2672,21'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2676,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2678,5'
          Dst:             MmsConnection_readMultipleVariablesAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2678,5'
          Dst:             readVariableHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2683,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2689,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_readSingleArrayElementWithComponentAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2633
      functionLinenumberEnd: 2660
      functionDepth:   0
      returnType:      void
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          107
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createReadRequestAlternateAccessSingleIndexComponent
        - sendAsyncRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2634,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2641,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2643,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2648,5'
          Dst:             mmsClient_createReadRequestAlternateAccessSingleIndexComponent
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2654,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_readSingleArrayElementWithComponent
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2596
      functionLinenumberEnd: 2624
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          83
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_readSingleArrayElementWithComponentAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - readVariableHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2602,21'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2606,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2608,5'
          Dst:             MmsConnection_readSingleArrayElementWithComponentAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2608,5'
          Dst:             readVariableHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2613,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2619,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_readArrayElementsAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2563
      functionLinenumberEnd: 2590
      functionDepth:   0
      returnType:      void
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          107
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createReadRequestAlternateAccessIndex
        - sendAsyncRequest
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2564,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2571,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2573,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2578,5'
          Dst:             mmsClient_createReadRequestAlternateAccessIndex
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2584,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_readArrayElements
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2528
      functionLinenumberEnd: 2556
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          83
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_readArrayElementsAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - readVariableHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2534,21'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2538,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2540,5'
          Dst:             MmsConnection_readArrayElementsAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2540,5'
          Dst:             readVariableHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2545,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2551,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_readVariableComponent
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2494
      functionLinenumberEnd: 2521
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_readVariableComponentAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - readVariableHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2500,21'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2504,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2506,5'
          Dst:             MmsConnection_readVariableComponentAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2506,5'
          Dst:             readVariableHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2510,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2516,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_readVariableComponentAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2461
      functionLinenumberEnd: 2488
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          104
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createReadRequestComponent
        - sendAsyncRequest
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2462,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2470,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2472,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2477,5'
          Dst:             mmsClient_createReadRequestComponent
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2482,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_readVariable
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2427
      functionLinenumberEnd: 2454
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          77
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_readVariableAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - readVariableHandler
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2433,21'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2437,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2439,5'
          Dst:             MmsConnection_readVariableAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2439,5'
          Dst:             readVariableHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2443,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2449,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_readVariableAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2394
      functionLinenumberEnd: 2421
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createReadRequest
        - sendAsyncRequest
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2395,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2403,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2405,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2410,5'
          Dst:             mmsClient_createReadRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2415,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_getVariableListNamesAssociationSpecificAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2365
      functionLinenumberEnd: 2368
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmsClient_getNameListSingleRequestAsync
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2366,5'
          Dst:             mmsClient_getNameListSingleRequestAsync
    - functionName:    mmsClient_getNameListSingleRequestAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2146
      functionLinenumberEnd: 2183
      functionDepth:   0
      returnType:      void
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          141
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - getConnectionState
        - getNextInvokeId
        - mmsClient_createGetNameListRequestDomainOrVMDSpecific
        - mmsClient_createMmsGetNameListRequestAssociationSpecific
        - mmsClient_createMmsGetNameListRequestVMDspecific
        - sendAsyncRequest
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2147,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2154,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2156,25'
          Dst:             getNextInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2162,9'
          Dst:             mmsClient_createMmsGetNameListRequestAssociationSpecific
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2167,13'
          Dst:             mmsClient_createMmsGetNameListRequestVMDspecific
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2170,13'
          Dst:             mmsClient_createGetNameListRequestDomainOrVMDSpecific
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2177,20'
          Dst:             sendAsyncRequest
    - functionName:    MmsConnection_getVariableListNamesAssociationSpecific
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2358
      functionLinenumberEnd: 2359
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmsClient_getNameList
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2359,12'
          Dst:             mmsClient_getNameList
    - functionName:    mmsClient_getNameList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2214
      functionLinenumberEnd: 2283
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          178
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - LinkedList_destroy
        - LinkedList_getLastElement
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - getNameListHandler
        - mmsClient_getNameListSingleRequestAsync
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2222,21'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2226,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2228,5'
          Dst:             mmsClient_getNameListSingleRequestAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2228,5'
          Dst:             getNameListHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2233,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2239,5'
          Dst:             Semaphore_destroy
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2243,25'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2248,37'
          Dst:             LinkedList_getLastElement
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2250,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2252,9'
          Dst:             mmsClient_getNameListSingleRequestAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2252,9'
          Dst:             getNameListHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2257,13'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2268,9'
          Dst:             Semaphore_destroy
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2278,13'
          Dst:             LinkedList_destroy
    - functionName:    MmsConnection_getDomainJournalsAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2351
      functionLinenumberEnd: 2354
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmsClient_getNameListSingleRequestAsync
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2352,5'
          Dst:             mmsClient_getNameListSingleRequestAsync
    - functionName:    MmsConnection_getDomainJournals
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2344
      functionLinenumberEnd: 2345
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmsClient_getNameList
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2345,12'
          Dst:             mmsClient_getNameList
    - functionName:    MmsConnection_getDomainVariableListNamesAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2337
      functionLinenumberEnd: 2340
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmsClient_getNameListSingleRequestAsync
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2338,5'
          Dst:             mmsClient_getNameListSingleRequestAsync
    - functionName:    MmsConnection_getDomainVariableListNames
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2330
      functionLinenumberEnd: 2331
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmsClient_getNameList
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2331,12'
          Dst:             mmsClient_getNameList
    - functionName:    MmsConnection_getDomainVariableNamesAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2323
      functionLinenumberEnd: 2326
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmsClient_getNameListSingleRequestAsync
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2324,5'
          Dst:             mmsClient_getNameListSingleRequestAsync
    - functionName:    MmsConnection_getDomainVariableNames
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2316
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmsClient_getNameList
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2317,12'
          Dst:             mmsClient_getNameList
    - functionName:    MmsConnection_getDomainNamesAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2309
      functionLinenumberEnd: 2312
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmsClient_getNameListSingleRequestAsync
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2310,5'
          Dst:             mmsClient_getNameListSingleRequestAsync
    - functionName:    MmsConnection_getDomainNames
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2302
      functionLinenumberEnd: 2303
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmsClient_getNameList
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2303,12'
          Dst:             mmsClient_getNameList
    - functionName:    MmsConnection_getVMDVariableNamesAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2295
      functionLinenumberEnd: 2298
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmsClient_getNameListSingleRequestAsync
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2296,5'
          Dst:             mmsClient_getNameListSingleRequestAsync
    - functionName:    MmsConnection_getVMDVariableNames
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2288
      functionLinenumberEnd: 2289
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmsClient_getNameList
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2289,12'
          Dst:             mmsClient_getNameList
    - functionName:    MmsConnection_setInformationReportHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2129
      functionLinenumberEnd: 2132
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    concludeHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2064
      functionLinenumberEnd: 2072
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2071,5'
          Dst:             Semaphore_post
    - functionName:    MmsConnection_concludeAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2103
      functionLinenumberEnd: 2123
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Hal_getMonotonicTimeInMs
        - IsoClientConnection_allocateTransmitBuffer
        - IsoClientConnection_sendMessage
        - getConnectionState
        - mmsClient_createConcludeRequest
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2104,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2112,35'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2114,5'
          Dst:             mmsClient_createConcludeRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2118,29'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2120,5'
          Dst:             IsoClientConnection_sendMessage
    - functionName:    MmsConnection_conclude
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2076
      functionLinenumberEnd: 2099
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_concludeAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
        - concludeHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2081,21'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2085,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2087,5'
          Dst:             MmsConnection_concludeAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2087,5'
          Dst:             concludeHandler
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2091,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2095,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_abort
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2020
      functionLinenumberEnd: 2053
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          94
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - Hal_getMonotonicTimeInMs
        - IsoClientConnection_abortAsync
        - IsoClientConnection_close
        - Thread_sleep
        - getConnectionState
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2027,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2029,9'
          Dst:             IsoClientConnection_abortAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2031,28'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2033,16'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2035,17'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2041,17'
          Dst:             Thread_sleep
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2048,9'
          Dst:             IsoClientConnection_close
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2052,5'
          Dst:             IsoClientConnection_close
    - functionName:    MmsConnection_abortAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2005
      functionLinenumberEnd: 2016
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - IsoClientConnection_abortAsync
        - getConnectionState
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2008,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2010,9'
          Dst:             IsoClientConnection_abortAsync
    - functionName:    MmsConnection_close
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1996
      functionLinenumberEnd: 2001
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - IsoClientConnection_close
        - getConnectionState
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1999,9'
          Dst:             getConnectionState
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:2000,9'
          Dst:             IsoClientConnection_close
    - functionName:    MmsConnection_tick
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1990
      functionLinenumberEnd: 1991
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IsoClientConnection_handleConnection
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1991,12'
          Dst:             IsoClientConnection_handleConnection
    - functionName:    connectionHandlingThread
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1577
      functionLinenumberEnd: 1586
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          38
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_tick
        - Thread_sleep
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1582,13'
          Dst:             MmsConnection_tick
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1583,13'
          Dst:             Thread_sleep
    - functionName:    MmsConnection_connectAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1936
      functionLinenumberEnd: 1986
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          126
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - IsoClientConnection_allocateTransmitBuffer
        - IsoClientConnection_associateAsync
        - IsoConnectionParameters_setTcpParameters
        - Thread_create
        - Thread_start
        - connectionHandlingThread
        - mmsClient_createInitiateRequest
        - setConnectionState
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1954,46'
          Dst:             Thread_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1954,46'
          Dst:             connectionHandlingThread
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1956,13'
          Dst:             Thread_start
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1961,5'
          Dst:             IsoConnectionParameters_setTcpParameters
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1966,27'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1968,5'
          Dst:             mmsClient_createInitiateRequest
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1978,9'
          Dst:             IsoClientConnection_associateAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1980,9'
          Dst:             setConnectionState
    - functionName:    internalConnectionStateChangedHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1867
      functionLinenumberEnd: 1881
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - Semaphore_post
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1875,9'
          Dst:             Semaphore_post
    - functionName:    MmsConnection_connect
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1885
      functionLinenumberEnd: 1931
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          121
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsConnection_connectAsync
        - Semaphore_create
        - Semaphore_destroy
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1890,21'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1895,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1902,5'
          Dst:             MmsConnection_connectAsync
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1906,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1926,5'
          Dst:             Semaphore_destroy
    - functionName:    MmsConnection_setTLSConfiguration
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1853
      functionLinenumberEnd: 1855
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IsoClientConnection_setTLSConfiguration
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1854,5'
          Dst:             IsoClientConnection_setTLSConfiguration
    - functionName:    MmsConnection_getMmsConnectionParameters
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1847
      functionLinenumberEnd: 1848
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsConnection_getIsoConnectionParameters
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1841
      functionLinenumberEnd: 1842
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsConnection_getLocalDetail
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1835
      functionLinenumberEnd: 1836
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsConnection_setLocalDetail
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1829
      functionLinenumberEnd: 1831
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsConnection_setConnectTimeout
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1823
      functionLinenumberEnd: 1825
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsConnection_getRequestTimeout
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1817
      functionLinenumberEnd: 1818
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsConnnection_setMaxOutstandingCalls
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1798
      functionLinenumberEnd: 1813
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          74
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - Memory_calloc
        - Memory_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1807,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1812,50'
          Dst:             Memory_calloc
    - functionName:    MmsConnection_setRequestTimeout
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1792
      functionLinenumberEnd: 1794
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsConnection_setConnectionStateChangedHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1785
      functionLinenumberEnd: 1788
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsConnection_setConnectionLostHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1778
      functionLinenumberEnd: 1781
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsConnection_setRawMessageHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1769
      functionLinenumberEnd: 1774
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsConnection_getFilestoreBasepath
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1751
      functionLinenumberEnd: 1765
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsConnection_setFilestoreBasepath
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1721
      functionLinenumberEnd: 1734
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_free
        - StringUtils_copyString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1726,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1731,35'
          Dst:             StringUtils_copyString
    - functionName:    MmsConnection_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1673
      functionLinenumberEnd: 1717
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          135
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - IsoClientConnection_destroy
        - IsoConnectionParameters_destroy
        - Memory_free
        - Semaphore_destroy
        - Thread_destroy
        - mmsClient_closeOutstandingOpenFiles
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1684,21'
          Dst:             Thread_destroy
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1692,13'
          Dst:             IsoClientConnection_destroy
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1695,13'
          Dst:             IsoConnectionParameters_destroy
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1697,9'
          Dst:             Semaphore_destroy
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1699,9'
          Dst:             Semaphore_destroy
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1701,9'
          Dst:             Semaphore_destroy
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1703,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1708,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1712,9'
          Dst:             mmsClient_closeOutstandingOpenFiles
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1715,9'
          Dst:             Memory_free
    - functionName:    MmsConnection_createNonThreaded
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1667
      functionLinenumberEnd: 1668
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsConnection_createInternal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1668,12'
          Dst:             MmsConnection_createInternal
    - functionName:    MmsConnection_createInternal
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1592
      functionLinenumberEnd: 1650
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          140
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - IsoClientConnection_create
        - IsoConnectionParameters_create
        - IsoConnectionParameters_setLocalAddresses
        - IsoConnectionParameters_setLocalApTitle
        - IsoConnectionParameters_setRemoteAddresses
        - IsoConnectionParameters_setRemoteApTitle
        - Memory_calloc
        - Semaphore_create
        - mmsIsoCallback
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1598,42'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1609,34'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1610,38'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1612,38'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1621,55'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1623,31'
          Dst:             IsoConnectionParameters_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1630,9'
          Dst:             IsoConnectionParameters_setLocalAddresses
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1631,9'
          Dst:             IsoConnectionParameters_setLocalApTitle
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1632,9'
          Dst:             IsoConnectionParameters_setRemoteAddresses
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1633,9'
          Dst:             IsoConnectionParameters_setRemoteApTitle
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1637,27'
          Dst:             IsoClientConnection_create
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1637,27'
          Dst:             mmsIsoCallback
    - functionName:    MmsConnection_createSecure
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1661
      functionLinenumberEnd: 1662
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsConnection_createInternal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1662,12'
          Dst:             MmsConnection_createInternal
    - functionName:    MmsConnection_create
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1655
      functionLinenumberEnd: 1656
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsConnection_createInternal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:1656,12'
          Dst:             MmsConnection_createInternal
    - functionName:    mmsClient_getMatchingObtainFileRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 366
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          122
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:341,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:353,26'
          Dst:             strcmp
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:355,25'
          Dst:             Semaphore_post
        - Src:             'src/mms/iso_mms/client/mms_client_connection.c:363,5'
          Dst:             Semaphore_post
    - functionName:    strcmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    244
      BranchProfiles:  []
      Callsites:       []
    - functionName:    convertHexStrToUint16
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 603
      functionLinenumberEnd: 641
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          155
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:604,19'
          Dst:             strlen
    - functionName:    strlen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    219
      BranchProfiles:  []
      Callsites:       []
    - functionName:    StringUtils_convertIPv6AdddressStringToByteArray
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 645
      functionLinenumberEnd: 736
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         42
      ICount:          284
      EdgeCount:       55
      CyclomaticComplexity: 15
      functionsReached:
        - convertHexStrToUint16
        - strchr
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:656,20'
          Dst:             strchr
        - Src:             'src/common/string_utilities.c:664,13'
          Dst:             strlen
        - Src:             'src/common/string_utilities.c:678,17'
          Dst:             convertHexStrToUint16
        - Src:             'src/common/string_utilities.c:692,18'
          Dst:             strchr
        - Src:             'src/common/string_utilities.c:697,26'
          Dst:             strchr
    - functionName:    strchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    108
      BranchProfiles:  []
      Callsites:       []
    - functionName:    StringUtils_sortList
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 599
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          157
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - LinkedList_getData
        - StringUtils_compareStrings
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:558,29'
          Dst:             LinkedList_getData
        - Src:             'src/common/string_utilities.c:570,33'
          Dst:             LinkedList_getData
        - Src:             'src/common/string_utilities.c:572,17'
          Dst:             StringUtils_compareStrings
    - functionName:    StringUtils_compareStrings
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 518
      functionLinenumberEnd: 532
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          76
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - StringUtils_compareChars
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:519,16'
          Dst:             StringUtils_compareChars
        - Src:             'src/common/string_utilities.c:528,16'
          Dst:             StringUtils_compareChars
    - functionName:    StringUtils_compareChars
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 512
      functionLinenumberEnd: 513
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - getCharWeight
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:513,13'
          Dst:             getCharWeight
        - Src:             'src/common/string_utilities.c:513,32'
          Dst:             getCharWeight
    - functionName:    getCharWeight
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          124
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - strchr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:487,17'
          Dst:             strchr
    - functionName:    StringUtils_endsWith
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 458
      functionLinenumberEnd: 469
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:459,24'
          Dst:             strlen
        - Src:             'src/common/string_utilities.c:460,24'
          Dst:             strlen
        - Src:             'src/common/string_utilities.c:464,14'
          Dst:             strcmp
    - functionName:    StringUtils_startsWith
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 454
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          85
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    toInt
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 400
      functionLinenumberEnd: 408
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          90
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    StringUtils_createBufferFromHexString
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 412
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          107
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - strlen
        - toInt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:413,24'
          Dst:             strlen
        - Src:             'src/common/string_utilities.c:422,20'
          Dst:             toInt
        - Src:             'src/common/string_utilities.c:426,19'
          Dst:             toInt
    - functionName:    StringUtils_digitsToInt
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - StringUtils_digitToInt
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:385,26'
          Dst:             StringUtils_digitToInt
    - functionName:    StringUtils_digitToInt
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - StringUtils_isDigit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:367,9'
          Dst:             StringUtils_isDigit
    - functionName:    StringUtils_isDigit
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          33
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    StringUtils_replace
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strlen
      functionUses:    28
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:345,15'
          Dst:             strlen
    - functionName:    StringUtils_copyStringMax
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          120
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - Memory_malloc
      functionUses:    61
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:253,22'
          Dst:             Memory_malloc
    - functionName:    StringUtils_concatString
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          161
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - Memory_malloc
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:196,22'
          Dst:             Memory_malloc
    - functionName:    StringUtils_createString
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          145
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - Memory_malloc
        - strcpy
        - strlen
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:167,28'
          Dst:             strlen
        - Src:             'src/common/string_utilities.c:171,21'
          Dst:             Memory_malloc
        - Src:             'src/common/string_utilities.c:181,13'
          Dst:             strcpy
        - Src:             'src/common/string_utilities.c:182,27'
          Dst:             strlen
    - functionName:    strcpy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    StringUtils_appendString
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          149
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    43
      BranchProfiles:  []
      Callsites:       []
    - functionName:    StringUtils_createStringInBuffer
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          85
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - StringUtils_appendString
      functionUses:    25
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:145,13'
          Dst:             StringUtils_appendString
    - functionName:    StringUtils_createStringFromBufferInBufferMax
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          52
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    21
      BranchProfiles:  []
      Callsites:       []
    - functionName:    StringUtils_createStringFromBufferInBuffer
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          34
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    StringUtils_createStringFromBuffer
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_malloc
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:93,27'
          Dst:             Memory_malloc
    - functionName:    StringUtils_copyStringToBufferAndReplace
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          70
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    StringUtils_copyStringToBuffer
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:62,27'
          Dst:             strlen
    - functionName:    StringUtils_copyString
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_malloc
        - strlen
      functionUses:    187
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:49,27'
          Dst:             strlen
        - Src:             'src/common/string_utilities.c:51,30'
          Dst:             Memory_malloc
    - functionName:    StringUtils_copySubString
      functionSourceFile: '/src/libiec61850/src/common/string_utilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_malloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_utilities.c:31,30'
          Dst:             Memory_malloc
    - functionName:    LinkedList_printStringList
      functionSourceFile: '/src/libiec61850/src/common/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_getNext
        - printf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/linked_list.c:228,23'
          Dst:             LinkedList_getNext
        - Src:             'src/common/linked_list.c:231,9'
          Dst:             printf
    - functionName:    LinkedList_getNext
      functionSourceFile: '/src/libiec61850/src/common/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    195
      BranchProfiles:  []
      Callsites:       []
    - functionName:    printf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LinkedList_getData
      functionSourceFile: '/src/libiec61850/src/common/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    38
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LinkedList_get
      functionSourceFile: '/src/libiec61850/src/common/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_getNext
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/linked_list.c:200,26'
          Dst:             LinkedList_getNext
        - Src:             'src/common/linked_list.c:206,19'
          Dst:             LinkedList_getNext
    - functionName:    LinkedList_insertAfter
      functionSourceFile: '/src/libiec61850/src/common/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_create
        - LinkedList_getNext
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/linked_list.c:178,29'
          Dst:             LinkedList_create
        - Src:             'src/common/linked_list.c:183,28'
          Dst:             LinkedList_getNext
    - functionName:    LinkedList_create
      functionSourceFile: '/src/libiec61850/src/common/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_malloc
      functionUses:    53
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/linked_list.c:43,25'
          Dst:             Memory_malloc
    - functionName:    LinkedList_remove
      functionSourceFile: '/src/libiec61850/src/common/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_free
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/linked_list.c:164,13'
          Dst:             Memory_free
    - functionName:    LinkedList_contains
      functionSourceFile: '/src/libiec61850/src/common/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          43
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LinkedList_add
      functionSourceFile: '/src/libiec61850/src/common/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_create
        - LinkedList_getLastElement
      functionUses:    47
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/linked_list.c:124,29'
          Dst:             LinkedList_create
        - Src:             'src/common/linked_list.c:130,30'
          Dst:             LinkedList_getLastElement
    - functionName:    LinkedList_getLastElement
      functionSourceFile: '/src/libiec61850/src/common/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LinkedList_size
      functionSourceFile: '/src/libiec61850/src/common/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LinkedList_destroyStatic
      functionSourceFile: '/src/libiec61850/src/common/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          45
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_free
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/linked_list.c:100,13'
          Dst:             Memory_free
    - functionName:    LinkedList_destroy
      functionSourceFile: '/src/libiec61850/src/common/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - LinkedList_destroyDeep
        - Memory_free
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/linked_list.c:82,5'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/common/linked_list.c:82,5'
          Dst:             Memory_free
    - functionName:    LinkedList_destroyDeep
      functionSourceFile: '/src/libiec61850/src/common/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          67
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - Memory_free
      functionUses:    31
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/linked_list.c:73,13'
          Dst:             Memory_free
    - functionName:    parseInitResponseDetail
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_initiate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          116
      EdgeCount:       21
      CyclomaticComplexity: 4
      functionsReached:
        - BerDecoder_decodeLength
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_initiate.c:135,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:130,18'
          Dst:             BerDecoder_decodeLength
    - functionName:    mmsClient_parseInitiateResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_initiate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          226
      EdgeCount:       36
      CyclomaticComplexity: 8
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
        - ByteBuffer_getBuffer
        - ByteBuffer_getSize
        - parseInitResponseDetail
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_initiate.c:192,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:175,21'
          Dst:             ByteBuffer_getSize
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:176,23'
          Dst:             ByteBuffer_getBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:179,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:187,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:194,43'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:202,58'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:210,57'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:217,58'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:222,21'
          Dst:             parseInitResponseDetail
    - functionName:    mmsClient_createConcludeRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_initiate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          40
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmsClient_createInitiateRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_initiate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          186
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_encodeBitString
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:45,13'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:48,13'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:51,13'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:54,13'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:69,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:72,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:73,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:76,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:77,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:80,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:81,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:84,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:85,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:88,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_initiate.c:103,14'
          Dst:             BerEncoder_encodeBitString
    - functionName:    ByteBuffer_setSize
      functionSourceFile: '/src/libiec61850/src/common/byte_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ByteBuffer_getSize
      functionSourceFile: '/src/libiec61850/src/common/byte_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ByteBuffer_getMaxSize
      functionSourceFile: '/src/libiec61850/src/common/byte_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ByteBuffer_getBuffer
      functionSourceFile: '/src/libiec61850/src/common/byte_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ByteBuffer_appendByte
      functionSourceFile: '/src/libiec61850/src/common/byte_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          44
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ByteBuffer_append
      functionSourceFile: '/src/libiec61850/src/common/byte_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          52
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ByteBuffer_wrap
      functionSourceFile: '/src/libiec61850/src/common/byte_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ByteBuffer_destroy
      functionSourceFile: '/src/libiec61850/src/common/byte_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/byte_buffer.c:57,5'
          Dst:             Memory_free
        - Src:             'src/common/byte_buffer.c:58,5'
          Dst:             Memory_free
    - functionName:    ByteBuffer_create
      functionSourceFile: '/src/libiec61850/src/common/byte_buffer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          66
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - Memory_calloc
        - Memory_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/byte_buffer.c:32,29'
          Dst:             Memory_calloc
        - Src:             'src/common/byte_buffer.c:37,34'
          Dst:             Memory_calloc
        - Src:             'src/common/byte_buffer.c:41,13'
          Dst:             Memory_free
    - functionName:    mmsClient_parseDefineNamedVariableResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 454
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          95
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ByteBuffer_getBuffer
        - ByteBuffer_getSize
        - ber_decode
        - mmsClient_getInvokeId
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:439,31'
          Dst:             ByteBuffer_getBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:439,62'
          Dst:             ByteBuffer_getSize
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:438,12'
          Dst:             ber_decode
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:444,29'
          Dst:             mmsClient_getInvokeId
    - functionName:    mmsClient_createDefineNamedVariableListRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 335
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          377
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - LinkedList_getNext
        - LinkedList_size
        - Memory_calloc
        - StringUtils_copyString
        - der_encode
        - mmsClient_createAlternateAccess
        - mmsClient_createAlternateAccessIndexComponent
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:336,24'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:347,65'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:348,70'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:354,82'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:355,87'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:357,80'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:358,85'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:363,70'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:364,75'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:368,20'
          Dst:             LinkedList_size
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:374,79'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:377,26'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:383,17'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:392,53'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:395,58'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:398,51'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:401,56'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:405,74'
          Dst:             mmsClient_createAlternateAccessIndexComponent
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:408,74'
          Dst:             mmsClient_createAlternateAccess
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:412,19'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:417,27'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:417,27'
          Dst:             mmsClient_write_out
    - functionName:    parseNamedVariableAttributes
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         46
      ICount:          364
      EdgeCount:       60
      CyclomaticComplexity: 16
      functionsReached:
        - LinkedList_add
        - LinkedList_create
        - MmsVariableAccessSpecification_createAlternateAccess
        - StringUtils_copyString
        - asn_INTEGER2long
        - mmsMsg_createStringFromAsnIdentifier
        - mmsMsg_getComponentNameFromAlternateAccess
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:221,29'
          Dst:             LinkedList_create
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:235,22'
          Dst:             mmsMsg_createStringFromAsnIdentifier
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:239,24'
          Dst:             mmsMsg_createStringFromAsnIdentifier
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:242,22'
          Dst:             mmsMsg_createStringFromAsnIdentifier
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:261,33'
          Dst:             asn_INTEGER2long
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:269,45'
          Dst:             mmsMsg_getComponentNameFromAlternateAccess
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:280,29'
          Dst:             asn_INTEGER2long
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:289,29'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:291,53'
          Dst:             MmsVariableAccessSpecification_createAlternateAccess
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:293,9'
          Dst:             LinkedList_add
    - functionName:    mmsClient_parseGetNamedVariableListAttributesResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          82
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ByteBuffer_getBuffer
        - ByteBuffer_getSize
        - ber_decode
        - parseNamedVariableAttributes
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:307,31'
          Dst:             ByteBuffer_getBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:307,62'
          Dst:             ByteBuffer_getSize
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:306,27'
          Dst:             ber_decode
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:315,30'
          Dst:             parseNamedVariableAttributes
    - functionName:    mmsClient_createGetNamedVariableListAttributesRequestAssociationSpecific
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - StringUtils_copyString
        - der_encode
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:193,24'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:203,44'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:204,49'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:206,5'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:206,5'
          Dst:             mmsClient_write_out
    - functionName:    mmsClient_createGetNamedVariableListAttributesRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          103
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - StringUtils_copyString
        - der_encode
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:159,24'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:170,61'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:171,66'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:173,59'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:174,64'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:179,49'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:180,54'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:183,5'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:183,5'
          Dst:             mmsClient_write_out
    - functionName:    mmsClient_parseDeleteNamedVariableListResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          121
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ByteBuffer_getBuffer
        - ByteBuffer_getSize
        - asn_INTEGER2long
        - ber_decode
        - mmsClient_getInvokeId
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:127,31'
          Dst:             ByteBuffer_getBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:127,62'
          Dst:             ByteBuffer_getSize
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:126,27'
          Dst:             ber_decode
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:133,29'
          Dst:             mmsClient_getInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:141,17'
          Dst:             asn_INTEGER2long
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:142,17'
          Dst:             asn_INTEGER2long
    - functionName:    mmsClient_createDeleteAssociationSpecificNamedVariableListRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          119
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
        - StringUtils_copyString
        - asn_long2INTEGER
        - der_encode
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:88,24'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:96,104'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:102,68'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:103,70'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:107,83'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:108,88'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:110,43'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:111,5'
          Dst:             asn_long2INTEGER
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:113,5'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:113,5'
          Dst:             mmsClient_write_out
    - functionName:    mmsClient_createDeleteNamedVariableListRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          200
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
        - StringUtils_copyString
        - asn_long2INTEGER
        - der_encode
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:40,24'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:48,104'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:54,68'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:55,70'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:59,100'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:61,28'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:62,98'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:64,28'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:68,88'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:70,28'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:73,43'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:74,5'
          Dst:             asn_long2INTEGER
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:76,5'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_named_variable_list.c:76,5'
          Dst:             mmsClient_write_out
    - functionName:    mmsMsg_parseFileName
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_common_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 648
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          125
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - BerDecoder_decodeLength
        - mmsMsg_createMmsRejectPdu
        - mmsMsg_createServiceErrorPdu
        - strstr
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:656,9'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:662,15'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:666,9'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:672,9'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:684,9'
          Dst:             strstr
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:686,9'
          Dst:             mmsMsg_createServiceErrorPdu
    - functionName:    strstr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmsMsg_openFile
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_common_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 634
      functionLinenumberEnd: 643
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - FileSystem_openFile
        - mmsMsg_createExtendedFilename
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:641,5'
          Dst:             mmsMsg_createExtendedFilename
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:643,12'
          Dst:             FileSystem_openFile
    - functionName:    mmsMsg_createExtendedFilename
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_common_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 606
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - StringUtils_concatString
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:608,5'
          Dst:             StringUtils_concatString
    - functionName:    mmsMsg_isFilenameSave
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_common_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 630
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          46
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - strstr
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:619,13'
          Dst:             strstr
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:622,13'
          Dst:             strstr
    - functionName:    mmsMsg_getComponentNameFromAlternateAccess
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_common_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 531
      functionLinenumberEnd: 600
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          250
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - mmsMsg_getComponentNameFromAlternateAccess
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:554,36'
          Dst:             mmsMsg_getComponentNameFromAlternateAccess
    - functionName:    mmsMsg_copyAsn1IdentifierToStringBuffer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_common_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 514
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          38
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmsMsg_createStringFromAsnIdentifier
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_common_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 506
      functionLinenumberEnd: 509
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - StringUtils_createStringFromBuffer
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:507,17'
          Dst:             StringUtils_createStringFromBuffer
    - functionName:    mmsMsg_parseDataElement
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_common_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 501
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         146
      ICount:          895
      EdgeCount:       193
      CyclomaticComplexity: 49
      functionsReached:
        - BerInteger_createFromBuffer
        - Memory_calloc
        - Memory_free
        - Memory_malloc
        - MmsValue_delete
        - MmsValue_newBoolean
        - MmsValue_newIntegerFromBerInteger
        - MmsValue_newMmsStringFromByteArray
        - MmsValue_newUnsignedFromBerInteger
        - MmsValue_newVisibleStringFromByteArray
        - memcpyReverseByteOrder
        - mmsMsg_parseDataElement
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:194,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:200,66'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:207,29'
          Dst:             mmsMsg_parseDataElement
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:211,25'
          Dst:             MmsValue_delete
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:230,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:236,66'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:243,29'
          Dst:             mmsMsg_parseDataElement
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:247,25'
          Dst:             MmsValue_delete
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:266,50'
          Dst:             BerInteger_createFromBuffer
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:270,29'
          Dst:             MmsValue_newIntegerFromBerInteger
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:282,50'
          Dst:             BerInteger_createFromBuffer
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:286,29'
          Dst:             MmsValue_newUnsignedFromBerInteger
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:298,25'
          Dst:             MmsValue_newVisibleStringFromByteArray
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:306,25'
          Dst:             MmsValue_newMmsStringFromByteArray
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:321,41'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:329,65'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:338,29'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:345,41'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:372,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:384,21'
          Dst:             memcpyReverseByteOrder
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:393,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:405,21'
          Dst:             memcpyReverseByteOrder
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:418,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:436,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:450,63'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:458,25'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:470,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:487,21'
          Dst:             MmsValue_newBoolean
    - functionName:    mmsMsg_createFloatData
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_common_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_malloc
        - memcpyReverseByteOrder
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:35,27'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:38,9'
          Dst:             memcpyReverseByteOrder
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:44,27'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:47,9'
          Dst:             memcpyReverseByteOrder
    - functionName:    mmsMsg_createBasicDataElement
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_common_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         34
      ICount:          471
      EdgeCount:       38
      CyclomaticComplexity: 6
      functionsReached:
        - Memory_calloc
        - Memory_malloc
        - MmsValue_getArraySize
        - MmsValue_getElement
        - mmsMsg_createBasicDataElement
        - mmsMsg_createFloatData
        - strlen
      functionUses:    8
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/common/mms_common_msg.c:59,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:57,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:62,24'
          Dst:             MmsValue_getArraySize
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:64,59'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:67,64'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:71,55'
          Dst:             MmsValue_getElement
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:71,25'
          Dst:             mmsMsg_createBasicDataElement
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:81,63'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:84,68'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:87,64'
          Dst:             mmsMsg_createBasicDataElement
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:112,9'
          Dst:             mmsMsg_createFloatData
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:119,54'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:144,54'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/common/mms_common_msg.c:163,50'
          Dst:             strlen
    - functionName:    MmsError_toString
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2445
      functionLinenumberEnd: 2595
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         51
      ICount:          257
      EdgeCount:       100
      CyclomaticComplexity: 51
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/common/mms_value.c:2446,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    MmsValue_printToBuffer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2292
      functionLinenumberEnd: 2441
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         64
      ICount:          446
      EdgeCount:       77
      CyclomaticComplexity: 15
      functionsReached:
        - Conversions_msTimeToGeneralizedTime
        - MmsValue_getArraySize
        - MmsValue_getBinaryTimeAsUtcMs
        - MmsValue_getBitStringBit
        - MmsValue_getBitStringSize
        - MmsValue_getBoolean
        - MmsValue_getElement
        - MmsValue_getOctetStringSize
        - MmsValue_getType
        - MmsValue_getUtcTimeInMs
        - MmsValue_printToBuffer
        - MmsValue_toFloat
        - MmsValue_toInt64
        - MmsValue_toString
        - MmsValue_toUint32
        - StringUtils_copyStringMax
        - snprintf
        - strnlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/common/mms_value.c:2303,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:2295,9'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/mms/iso_mms/common/mms_value.c:2303,13'
          Dst:             MmsValue_getType
        - Src:             'src/mms/iso_mms/common/mms_value.c:2313,25'
          Dst:             MmsValue_getArraySize
        - Src:             'src/mms/iso_mms/common/mms_value.c:2318,78'
          Dst:             MmsValue_getElement
        - Src:             'src/mms/iso_mms/common/mms_value.c:2318,38'
          Dst:             MmsValue_printToBuffer
        - Src:             'src/mms/iso_mms/common/mms_value.c:2321,23'
          Dst:             strnlen
        - Src:             'src/mms/iso_mms/common/mms_value.c:2344,45'
          Dst:             MmsValue_getBinaryTimeAsUtcMs
        - Src:             'src/mms/iso_mms/common/mms_value.c:2344,9'
          Dst:             Conversions_msTimeToGeneralizedTime
        - Src:             'src/mms/iso_mms/common/mms_value.c:2345,9'
          Dst:             snprintf
        - Src:             'src/mms/iso_mms/common/mms_value.c:2352,20'
          Dst:             MmsValue_getBitStringSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:2368,17'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/mms/iso_mms/common/mms_value.c:2378,13'
          Dst:             MmsValue_getBoolean
        - Src:             'src/mms/iso_mms/common/mms_value.c:2379,13'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/mms/iso_mms/common/mms_value.c:2381,13'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/mms/iso_mms/common/mms_value.c:2386,9'
          Dst:             snprintf
        - Src:             'src/mms/iso_mms/common/mms_value.c:2390,44'
          Dst:             MmsValue_toFloat
        - Src:             'src/mms/iso_mms/common/mms_value.c:2390,9'
          Dst:             snprintf
        - Src:             'src/mms/iso_mms/common/mms_value.c:2394,9'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/mms/iso_mms/common/mms_value.c:2399,57'
          Dst:             MmsValue_toInt64
        - Src:             'src/mms/iso_mms/common/mms_value.c:2399,9'
          Dst:             snprintf
        - Src:             'src/mms/iso_mms/common/mms_value.c:2403,20'
          Dst:             MmsValue_getOctetStringSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:2408,13'
          Dst:             snprintf
        - Src:             'src/mms/iso_mms/common/mms_value.c:2418,44'
          Dst:             MmsValue_toUint32
        - Src:             'src/mms/iso_mms/common/mms_value.c:2418,9'
          Dst:             snprintf
        - Src:             'src/mms/iso_mms/common/mms_value.c:2423,45'
          Dst:             MmsValue_getUtcTimeInMs
        - Src:             'src/mms/iso_mms/common/mms_value.c:2423,9'
          Dst:             Conversions_msTimeToGeneralizedTime
        - Src:             'src/mms/iso_mms/common/mms_value.c:2424,9'
          Dst:             snprintf
        - Src:             'src/mms/iso_mms/common/mms_value.c:2430,55'
          Dst:             MmsValue_toString
        - Src:             'src/mms/iso_mms/common/mms_value.c:2430,9'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/mms/iso_mms/common/mms_value.c:2435,9'
          Dst:             StringUtils_copyStringMax
    - functionName:    MmsValue_getType
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2238
      functionLinenumberEnd: 2239
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    95
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_getArraySize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1385
      functionLinenumberEnd: 1386
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    30
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_getElement
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2196
      functionLinenumberEnd: 2204
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    160
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strnlen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_getBinaryTimeAsUtcMs
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1951
      functionLinenumberEnd: 1980
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          92
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    snprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_getBitStringSize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 446
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_getBitStringBit
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 510
      functionLinenumberEnd: 526
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    42
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_getBoolean
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 802
      functionLinenumberEnd: 803
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    24
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_toFloat
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1050
      functionLinenumberEnd: 1072
      functionDepth:   0
      returnType:      float
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_toInt64
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1039
      functionLinenumberEnd: 1045
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - BerInteger_toInt64
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1043,9'
          Dst:             BerInteger_toInt64
    - functionName:    MmsValue_getOctetStringSize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1592
      functionLinenumberEnd: 1593
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_toUint32
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1025
      functionLinenumberEnd: 1031
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - BerInteger_toUint32
      functionUses:    22
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1029,9'
          Dst:             BerInteger_toUint32
    - functionName:    MmsValue_getUtcTimeInMs
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 898
      functionLinenumberEnd: 918
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcpyReverseByteOrder
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:903,5'
          Dst:             memcpyReverseByteOrder
    - functionName:    MmsValue_toString
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2045
      functionLinenumberEnd: 2050
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          39
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    23
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_getTypeString
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2250
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          105
      EdgeCount:       41
      CyclomaticComplexity: 22
      functionsReached:
        - MmsValue_getType
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/common/mms_value.c:2251,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:2251,13'
          Dst:             MmsValue_getType
    - functionName:    MmsValue_getSubElement
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2244
      functionLinenumberEnd: 2245
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsVariableSpecification_getChildValue
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:2245,12'
          Dst:             MmsVariableSpecification_getChildValue
    - functionName:    MmsValue_isDeletable
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2232
      functionLinenumberEnd: 2233
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_setDeletableRecursive
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2214
      functionLinenumberEnd: 2228
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          73
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - MmsValue_getArraySize
        - MmsValue_getElement
        - MmsValue_getType
        - MmsValue_setDeletable
        - MmsValue_setDeletableRecursive
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:2217,14'
          Dst:             MmsValue_getType
        - Src:             'src/mms/iso_mms/common/mms_value.c:2217,55'
          Dst:             MmsValue_getType
        - Src:             'src/mms/iso_mms/common/mms_value.c:2220,32'
          Dst:             MmsValue_getArraySize
        - Src:             'src/mms/iso_mms/common/mms_value.c:2223,48'
          Dst:             MmsValue_getElement
        - Src:             'src/mms/iso_mms/common/mms_value.c:2223,17'
          Dst:             MmsValue_setDeletableRecursive
        - Src:             'src/mms/iso_mms/common/mms_value.c:2226,9'
          Dst:             MmsValue_setDeletable
    - functionName:    MmsValue_setDeletable
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2208
      functionLinenumberEnd: 2210
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_setElement
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2184
      functionLinenumberEnd: 2192
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          68
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    52
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_createEmptyStructure
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2171
      functionLinenumberEnd: 2180
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_createEmptyArray
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:2172,22'
          Dst:             MmsValue_createEmptyArray
    - functionName:    MmsValue_createEmptyArray
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2142
      functionLinenumberEnd: 2166
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          80
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - Memory_calloc
        - Memory_free
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:2143,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:2150,52'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:2154,9'
          Dst:             Memory_free
    - functionName:    MmsValue_newUtcTimeByMsTime
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2092
      functionLinenumberEnd: 2102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
        - MmsValue_setUtcTimeMs
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:2093,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:2099,5'
          Dst:             MmsValue_setUtcTimeMs
    - functionName:    MmsValue_setUtcTimeMs
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 849
      functionLinenumberEnd: 852
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - setUtcTimeMs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:850,5'
          Dst:             setUtcTimeMs
    - functionName:    setUtcTimeMs
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 823
      functionLinenumberEnd: 845
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          69
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcpyReverseByteOrder
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:830,5'
          Dst:             memcpyReverseByteOrder
    - functionName:    MmsValue_newUtcTime
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2063
      functionLinenumberEnd: 2087
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:2064,33'
          Dst:             Memory_calloc
    - functionName:    MmsValue_getStringSize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2054
      functionLinenumberEnd: 2059
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_newMmsStringFromByteArray
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2030
      functionLinenumberEnd: 2031
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_newStringFromByteArray
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:2031,12'
          Dst:             MmsValue_newStringFromByteArray
    - functionName:    MmsValue_newStringFromByteArray
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2000
      functionLinenumberEnd: 2019
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_calloc
        - Memory_free
        - StringUtils_createStringFromBuffer
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:2001,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:2010,37'
          Dst:             StringUtils_createStringFromBuffer
        - Src:             'src/mms/iso_mms/common/mms_value.c:2014,9'
          Dst:             Memory_free
    - functionName:    MmsValue_newVisibleStringFromByteArray
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2024
      functionLinenumberEnd: 2025
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_newStringFromByteArray
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:2025,12'
          Dst:             MmsValue_newStringFromByteArray
    - functionName:    setVisibleStringValue
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1775
      functionLinenumberEnd: 1800
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          104
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - Memory_free
        - Memory_malloc
        - StringUtils_copyStringMax
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1780,33'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/common/mms_value.c:1784,17'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_value.c:1785,56'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1793,13'
          Dst:             StringUtils_copyStringMax
    - functionName:    MmsValue_getDataAccessError
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1985
      functionLinenumberEnd: 1986
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_setBinaryTime
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1909
      functionLinenumberEnd: 1947
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          97
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_newMmsString
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1879
      functionLinenumberEnd: 1880
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_newString
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1880,12'
          Dst:             MmsValue_newString
    - functionName:    MmsValue_newString
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1805
      functionLinenumberEnd: 1836
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          85
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - Memory_calloc
        - Memory_free
        - Memory_malloc
        - setVisibleStringValue
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1806,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1820,26'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/common/mms_value.c:1823,48'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1827,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_value.c:1832,9'
          Dst:             setVisibleStringValue
    - functionName:    MmsValue_newStringWithSize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1847
      functionLinenumberEnd: 1868
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          67
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_calloc
        - Memory_free
        - Memory_malloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1848,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1856,44'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1860,9'
          Dst:             Memory_free
    - functionName:    MmsValue_newVisibleString
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1841
      functionLinenumberEnd: 1842
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_newString
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1842,12'
          Dst:             MmsValue_newString
    - functionName:    MmsValue_newBinaryTime
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1891
      functionLinenumberEnd: 1904
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_calloc
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1892,33'
          Dst:             Memory_calloc
    - functionName:    MmsValue_newMmsStringWithSize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1885
      functionLinenumberEnd: 1886
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_newStringWithSize
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1886,12'
          Dst:             MmsValue_newStringWithSize
    - functionName:    MmsValue_createArray
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2106
      functionLinenumberEnd: 2137
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          101
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - Memory_calloc
        - Memory_free
        - MmsValue_delete
        - MmsValue_newDefaultValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:2107,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:2114,52'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:2118,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_value.c:2126,47'
          Dst:             MmsValue_newDefaultValue
        - Src:             'src/mms/iso_mms/common/mms_value.c:2130,13'
          Dst:             MmsValue_delete
    - functionName:    MmsValue_newDefaultValue
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1661
      functionLinenumberEnd: 1770
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         37
      ICount:          295
      EdgeCount:       44
      CyclomaticComplexity: 9
      functionsReached:
        - Memory_calloc
        - Memory_free
        - MmsValue_createArray
        - MmsValue_newBinaryTime
        - MmsValue_newBoolean
        - MmsValue_newInteger
        - MmsValue_newMmsStringWithSize
        - MmsValue_newStructure
        - MmsValue_newUnsigned
        - MmsValue_newVisibleStringWithSize
      functionUses:    7
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/common/mms_value.c:1664,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1667,16'
          Dst:             MmsValue_newInteger
        - Src:             'src/mms/iso_mms/common/mms_value.c:1671,16'
          Dst:             MmsValue_newUnsigned
        - Src:             'src/mms/iso_mms/common/mms_value.c:1675,27'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1687,27'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1697,51'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1702,27'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1715,49'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1719,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_value.c:1727,16'
          Dst:             MmsValue_newVisibleStringWithSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:1731,16'
          Dst:             MmsValue_newBoolean
        - Src:             'src/mms/iso_mms/common/mms_value.c:1735,27'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1744,16'
          Dst:             MmsValue_createArray
        - Src:             'src/mms/iso_mms/common/mms_value.c:1748,16'
          Dst:             MmsValue_newStructure
        - Src:             'src/mms/iso_mms/common/mms_value.c:1752,16'
          Dst:             MmsValue_newMmsStringWithSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:1757,20'
          Dst:             MmsValue_newBinaryTime
        - Src:             'src/mms/iso_mms/common/mms_value.c:1759,20'
          Dst:             MmsValue_newBinaryTime
    - functionName:    MmsValue_delete
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1391
      functionLinenumberEnd: 1431
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         32
      ICount:          169
      EdgeCount:       36
      CyclomaticComplexity: 6
      functionsReached:
        - Asn1PrimitiveValue_destroy
        - Memory_free
        - MmsValue_delete
      functionUses:    74
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/common/mms_value.c:1395,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1399,9'
          Dst:             Asn1PrimitiveValue_destroy
        - Src:             'src/mms/iso_mms/common/mms_value.c:1403,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_value.c:1406,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_value.c:1411,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_value.c:1421,17'
          Dst:             MmsValue_delete
        - Src:             'src/mms/iso_mms/common/mms_value.c:1424,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_value.c:1430,5'
          Dst:             Memory_free
    - functionName:    MmsValue_newInteger
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1480
      functionLinenumberEnd: 1499
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          64
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - BerInteger_createInt32
        - BerInteger_createInt64
        - Memory_calloc
        - Memory_free
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1481,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1488,35'
          Dst:             BerInteger_createInt32
        - Src:             'src/mms/iso_mms/common/mms_value.c:1490,35'
          Dst:             BerInteger_createInt64
        - Src:             'src/mms/iso_mms/common/mms_value.c:1494,13'
          Dst:             Memory_free
    - functionName:    MmsValue_newUnsigned
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1504
      functionLinenumberEnd: 1523
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          64
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - BerInteger_createInt32
        - BerInteger_createInt64
        - Memory_calloc
        - Memory_free
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1505,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1512,35'
          Dst:             BerInteger_createInt32
        - Src:             'src/mms/iso_mms/common/mms_value.c:1514,35'
          Dst:             BerInteger_createInt64
        - Src:             'src/mms/iso_mms/common/mms_value.c:1518,13'
          Dst:             Memory_free
    - functionName:    MmsValue_newVisibleStringWithSize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1873
      functionLinenumberEnd: 1874
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_newStringWithSize
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1874,12'
          Dst:             MmsValue_newStringWithSize
    - functionName:    MmsValue_newBoolean
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1528
      functionLinenumberEnd: 1541
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_calloc
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1529,33'
          Dst:             Memory_calloc
    - functionName:    MmsValue_newStructure
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1623
      functionLinenumberEnd: 1656
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          114
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - Memory_calloc
        - Memory_free
        - MmsValue_delete
        - MmsValue_newDefaultValue
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1624,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1631,56'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1639,21'
          Dst:             MmsValue_newDefaultValue
        - Src:             'src/mms/iso_mms/common/mms_value.c:1643,21'
          Dst:             MmsValue_delete
        - Src:             'src/mms/iso_mms/common/mms_value.c:1651,13'
          Dst:             Memory_free
    - functionName:    MmsValue_getOctetStringOctet
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1610
      functionLinenumberEnd: 1618
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_getOctetStringBuffer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1604
      functionLinenumberEnd: 1605
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_getOctetStringMaxSize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1598
      functionLinenumberEnd: 1599
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_setOctetStringOctet
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1578
      functionLinenumberEnd: 1588
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_setOctetString
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1568
      functionLinenumberEnd: 1574
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          41
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_newOctetString
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1546
      functionLinenumberEnd: 1563
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          74
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - Memory_calloc
        - Memory_free
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1547,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1554,49'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1558,13'
          Dst:             Memory_free
    - functionName:    MmsValue_deleteConditional
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1436
      functionLinenumberEnd: 1476
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         29
      ICount:          162
      EdgeCount:       32
      CyclomaticComplexity: 5
      functionsReached:
        - Asn1PrimitiveValue_destroy
        - Memory_free
        - MmsValue_deleteConditional
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/common/mms_value.c:1440,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1444,13'
          Dst:             Asn1PrimitiveValue_destroy
        - Src:             'src/mms/iso_mms/common/mms_value.c:1447,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_value.c:1450,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_value.c:1455,17'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_value.c:1465,21'
          Dst:             MmsValue_deleteConditional
        - Src:             'src/mms/iso_mms/common/mms_value.c:1468,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_value.c:1474,9'
          Dst:             Memory_free
    - functionName:    MmsValue_clone
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1232
      functionLinenumberEnd: 1381
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         52
      ICount:          469
      EdgeCount:       61
      CyclomaticComplexity: 11
      functionsReached:
        - Asn1PrimitiveValue_clone
        - Memory_calloc
        - Memory_free
        - Memory_malloc
        - MmsValue_clone
        - MmsValue_delete
        - StringUtils_copyStringMax
        - bitStringByteSize
      functionUses:    12
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/common/mms_value.c:1245,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1236,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1252,60'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1262,63'
          Dst:             MmsValue_clone
        - Src:             'src/mms/iso_mms/common/mms_value.c:1266,25'
          Dst:             MmsValue_delete
        - Src:             'src/mms/iso_mms/common/mms_value.c:1279,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_value.c:1287,35'
          Dst:             Asn1PrimitiveValue_clone
        - Src:             'src/mms/iso_mms/common/mms_value.c:1291,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_value.c:1306,16'
          Dst:             bitStringByteSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:1307,51'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1315,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_value.c:1329,53'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1337,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_value.c:1355,52'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:1361,13'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/mms/iso_mms/common/mms_value.c:1365,13'
          Dst:             Memory_free
    - functionName:    bitStringByteSize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_cloneToBuffer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1168
      functionLinenumberEnd: 1227
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          257
      EdgeCount:       20
      CyclomaticComplexity: 2
      functionsReached:
        - MemoryAllocator_getAlignedSize
        - MmsValue_cloneToBuffer
        - StringUtils_copyStringMax
        - bitStringByteSize
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/common/mms_value.c:1174,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1172,27'
          Dst:             MemoryAllocator_getAlignedSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:1185,34'
          Dst:             MmsValue_cloneToBuffer
        - Src:             'src/mms/iso_mms/common/mms_value.c:1191,63'
          Dst:             bitStringByteSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:1193,62'
          Dst:             bitStringByteSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:1193,31'
          Dst:             MemoryAllocator_getAlignedSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:1201,31'
          Dst:             MemoryAllocator_getAlignedSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:1204,31'
          Dst:             MemoryAllocator_getAlignedSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:1211,31'
          Dst:             MemoryAllocator_getAlignedSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:1218,9'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/mms/iso_mms/common/mms_value.c:1220,62'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/common/mms_value.c:1220,31'
          Dst:             MemoryAllocator_getAlignedSize
    - functionName:    MmsValue_getSizeInMemory
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1124
      functionLinenumberEnd: 1163
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          145
      EdgeCount:       20
      CyclomaticComplexity: 2
      functionsReached:
        - MemoryAllocator_getAlignedSize
        - MmsValue_getSizeInMemory
        - bitStringByteSize
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/common/mms_value.c:1127,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1125,22'
          Dst:             MemoryAllocator_getAlignedSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:1131,24'
          Dst:             MemoryAllocator_getAlignedSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:1135,27'
          Dst:             MmsValue_getSizeInMemory
        - Src:             'src/mms/iso_mms/common/mms_value.c:1140,54'
          Dst:             bitStringByteSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:1140,23'
          Dst:             MemoryAllocator_getAlignedSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:1145,23'
          Dst:             MemoryAllocator_getAlignedSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:1146,23'
          Dst:             MemoryAllocator_getAlignedSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:1150,23'
          Dst:             MemoryAllocator_getAlignedSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:1156,44'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/common/mms_value.c:1156,13'
          Dst:             MemoryAllocator_getAlignedSize
    - functionName:    MmsValue_toUnixTimestamp
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1103
      functionLinenumberEnd: 1119
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_toDouble
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1076
      functionLinenumberEnd: 1099
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_toInt32
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1014
      functionLinenumberEnd: 1020
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - BerInteger_toInt32
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1018,9'
          Dst:             BerInteger_toInt32
    - functionName:    MmsValue_newIntegerFromInt64
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 991
      functionLinenumberEnd: 1006
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - BerInteger_createFromInt64
        - Memory_calloc
        - Memory_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:992,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:997,31'
          Dst:             BerInteger_createFromInt64
        - Src:             'src/mms/iso_mms/common/mms_value.c:1001,13'
          Dst:             Memory_free
    - functionName:    MmsValue_newUnsignedFromUint32
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 971
      functionLinenumberEnd: 986
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - BerInteger_createFromUint32
        - Memory_calloc
        - Memory_free
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:972,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:977,31'
          Dst:             BerInteger_createFromUint32
        - Src:             'src/mms/iso_mms/common/mms_value.c:981,13'
          Dst:             Memory_free
    - functionName:    MmsValue_newIntegerFromInt32
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 951
      functionLinenumberEnd: 966
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - BerInteger_createFromInt32
        - Memory_calloc
        - Memory_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:952,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:957,31'
          Dst:             BerInteger_createFromInt32
        - Src:             'src/mms/iso_mms/common/mms_value.c:961,13'
          Dst:             Memory_free
    - functionName:    MmsValue_getUtcTimeInMsWithUs
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 923
      functionLinenumberEnd: 946
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          78
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memcpyReverseByteOrder
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:928,5'
          Dst:             memcpyReverseByteOrder
    - functionName:    MmsValue_getUtcTimeBuffer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 892
      functionLinenumberEnd: 893
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_setUtcTimeByBuffer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 877
      functionLinenumberEnd: 888
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_getUtcTimeQuality
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 871
      functionLinenumberEnd: 872
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_setUtcTimeQuality
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 865
      functionLinenumberEnd: 867
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_setUtcTimeMsEx
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 857
      functionLinenumberEnd: 860
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - setUtcTimeMs
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:858,5'
          Dst:             setUtcTimeMs
    - functionName:    MmsValue_setUtcTime
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 808
      functionLinenumberEnd: 818
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcpyReverseByteOrder
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:813,5'
          Dst:             memcpyReverseByteOrder
    - functionName:    MmsValue_setBoolean
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 796
      functionLinenumberEnd: 798
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    18
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_setUint8
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 784
      functionLinenumberEnd: 792
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Asn1PrimitiveValue_getMaxSize
        - BerInteger_setUint8
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:787,13'
          Dst:             Asn1PrimitiveValue_getMaxSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:789,13'
          Dst:             BerInteger_setUint8
    - functionName:    MmsValue_setUint16
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 772
      functionLinenumberEnd: 780
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Asn1PrimitiveValue_getMaxSize
        - BerInteger_setUint16
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:775,13'
          Dst:             Asn1PrimitiveValue_getMaxSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:777,13'
          Dst:             BerInteger_setUint16
    - functionName:    MmsValue_setUint32
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 760
      functionLinenumberEnd: 768
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Asn1PrimitiveValue_getMaxSize
        - BerInteger_setUint32
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:763,13'
          Dst:             Asn1PrimitiveValue_getMaxSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:765,13'
          Dst:             BerInteger_setUint32
    - functionName:    MmsValue_setInt64
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 748
      functionLinenumberEnd: 756
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Asn1PrimitiveValue_getMaxSize
        - BerInteger_setInt64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:751,13'
          Dst:             Asn1PrimitiveValue_getMaxSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:753,13'
          Dst:             BerInteger_setInt64
    - functionName:    MmsValue_setInt32
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 736
      functionLinenumberEnd: 744
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Asn1PrimitiveValue_getMaxSize
        - BerInteger_setInt32
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:739,13'
          Dst:             Asn1PrimitiveValue_getMaxSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:741,13'
          Dst:             BerInteger_setInt32
    - functionName:    MmsValue_setInt16
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 724
      functionLinenumberEnd: 732
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Asn1PrimitiveValue_getMaxSize
        - BerInteger_setInt32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:727,13'
          Dst:             Asn1PrimitiveValue_getMaxSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:729,13'
          Dst:             BerInteger_setInt32
    - functionName:    MmsValue_setInt8
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 712
      functionLinenumberEnd: 720
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Asn1PrimitiveValue_getMaxSize
        - BerInteger_setInt32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:715,13'
          Dst:             Asn1PrimitiveValue_getMaxSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:717,13'
          Dst:             BerInteger_setInt32
    - functionName:    MmsValue_newIntegerFromInt16
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 692
      functionLinenumberEnd: 707
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - BerInteger_createFromInt32
        - Memory_calloc
        - Memory_free
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:693,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:698,31'
          Dst:             BerInteger_createFromInt32
        - Src:             'src/mms/iso_mms/common/mms_value.c:702,13'
          Dst:             Memory_free
    - functionName:    MmsValue_newIntegerFromInt8
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 672
      functionLinenumberEnd: 687
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - BerInteger_createFromInt32
        - Memory_calloc
        - Memory_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:673,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:678,31'
          Dst:             BerInteger_createFromInt32
        - Src:             'src/mms/iso_mms/common/mms_value.c:682,13'
          Dst:             Memory_free
    - functionName:    MmsValue_newDouble
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 655
      functionLinenumberEnd: 667
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:656,33'
          Dst:             Memory_calloc
    - functionName:    MmsValue_setDouble
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 651
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          62
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_setFloat
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 619
      functionLinenumberEnd: 633
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - float
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          62
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_newFloat
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 602
      functionLinenumberEnd: 614
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - float
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:603,33'
          Dst:             Memory_malloc
    - functionName:    MmsValue_setBitStringFromIntegerBigEndian
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 586
      functionLinenumberEnd: 598
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_setBitStringBit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:592,13'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/mms/iso_mms/common/mms_value.c:594,13'
          Dst:             MmsValue_setBitStringBit
    - functionName:    MmsValue_setBitStringBit
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 493
      functionLinenumberEnd: 506
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          75
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    37
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_getBitStringAsIntegerBigEndian
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 564
      functionLinenumberEnd: 581
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          61
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_getBitStringBit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:573,13'
          Dst:             MmsValue_getBitStringBit
    - functionName:    MmsValue_setBitStringFromInteger
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 548
      functionLinenumberEnd: 560
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_setBitStringBit
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:554,13'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/mms/iso_mms/common/mms_value.c:556,13'
          Dst:             MmsValue_setBitStringBit
    - functionName:    MmsValue_getBitStringAsInteger
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 530
      functionLinenumberEnd: 543
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          55
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_getBitStringBit
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:537,13'
          Dst:             MmsValue_getBitStringBit
    - functionName:    MmsValue_getNumberOfSetBits
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 488
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          152
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - getBitStringByteSize
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:455,20'
          Dst:             getBitStringByteSize
    - functionName:    getBitStringByteSize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 396
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_setAllBitStringBits
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 421
      functionLinenumberEnd: 442
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          105
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - getBitStringByteSize
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:422,20'
          Dst:             getBitStringByteSize
    - functionName:    MmsValue_deleteAllBitStringBits
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 409
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - getBitStringByteSize
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:410,20'
          Dst:             getBitStringByteSize
    - functionName:    MmsValue_newBitString
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 392
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_calloc
        - Memory_free
        - bitStringByteSize
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:376,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:383,43'
          Dst:             bitStringByteSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:383,43'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:387,9'
          Dst:             Memory_free
    - functionName:    MmsValue_newDataAccessError
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:362,33'
          Dst:             Memory_calloc
    - functionName:    MmsValue_setMmsString
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1991
      functionLinenumberEnd: 1996
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - setVisibleStringValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:1994,9'
          Dst:             setVisibleStringValue
    - functionName:    MmsValue_setVisibleString
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2036
      functionLinenumberEnd: 2041
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - setVisibleStringValue
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:2039,9'
          Dst:             setVisibleStringValue
    - functionName:    updateStructuredComponent
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsValue_update
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:67,13'
          Dst:             MmsValue_update
    - functionName:    MmsValue_update
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 357
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         58
      ICount:          414
      EdgeCount:       71
      CyclomaticComplexity: 15
      functionsReached:
        - BerInteger_setFromBerInteger
        - Memory_free
        - Memory_malloc
        - MmsValue_getBitStringBit
        - MmsValue_setBitStringBit
        - MmsValue_setMmsString
        - MmsValue_setVisibleString
        - bitStringByteSize
        - updateStructuredComponent
      functionUses:    74
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/common/mms_value.c:248,13'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:252,21'
          Dst:             updateStructuredComponent
        - Src:             'src/mms/iso_mms/common/mms_value.c:273,21'
          Dst:             BerInteger_setFromBerInteger
        - Src:             'src/mms/iso_mms/common/mms_value.c:285,84'
          Dst:             bitStringByteSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:293,63'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/mms/iso_mms/common/mms_value.c:293,29'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/mms/iso_mms/common/mms_value.c:307,21'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_value.c:308,61'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/common/mms_value.c:333,17'
          Dst:             MmsValue_setVisibleString
        - Src:             'src/mms/iso_mms/common/mms_value.c:337,17'
          Dst:             MmsValue_setMmsString
    - functionName:    MmsValue_equalTypes
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          132
      EdgeCount:       28
      CyclomaticComplexity: 7
      functionsReached:
        - MmsValue_equalTypes
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/common/mms_value.c:211,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:222,26'
          Dst:             MmsValue_equalTypes
    - functionName:    MmsValue_equals
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         70
      ICount:          426
      EdgeCount:       89
      CyclomaticComplexity: 21
      functionsReached:
        - Asn1PrimitivaValue_compare
        - MmsValue_equals
        - bitStringByteSize
        - memcmp
        - strcmp
      functionUses:    10
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/common/mms_value.c:110,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:121,26'
          Dst:             MmsValue_equals
        - Src:             'src/mms/iso_mms/common/mms_value.c:135,17'
          Dst:             memcmp
        - Src:             'src/mms/iso_mms/common/mms_value.c:141,20'
          Dst:             Asn1PrimitivaValue_compare
        - Src:             'src/mms/iso_mms/common/mms_value.c:144,17'
          Dst:             memcmp
        - Src:             'src/mms/iso_mms/common/mms_value.c:150,88'
          Dst:             bitStringByteSize
        - Src:             'src/mms/iso_mms/common/mms_value.c:150,21'
          Dst:             memcmp
        - Src:             'src/mms/iso_mms/common/mms_value.c:157,21'
          Dst:             memcmp
        - Src:             'src/mms/iso_mms/common/mms_value.c:166,21'
          Dst:             memcmp
        - Src:             'src/mms/iso_mms/common/mms_value.c:178,25'
          Dst:             strcmp
    - functionName:    memcmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    29
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsValue_newUnsignedFromBerInteger
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:91,33'
          Dst:             Memory_calloc
    - functionName:    MmsValue_newIntegerFromBerInteger
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:77,33'
          Dst:             Memory_calloc
    - functionName:    MmsValue_getBitStringByteSize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitStringByteSize
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_value.c:49,12'
          Dst:             bitStringByteSize
    - functionName:    memcpyReverseByteOrder
      functionSourceFile: '/src/libiec61850/src/common/conversions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          43
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getSecondsOffset
      functionSourceFile: '/src/libiec61850/src/common/conversions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          55
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - StringUtils_digitsToInt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/conversions.c:186,22'
          Dst:             StringUtils_digitsToInt
        - Src:             'src/common/conversions.c:191,21'
          Dst:             StringUtils_digitsToInt
    - functionName:    Conversions_generalizedTimeToMsTime
      functionSourceFile: '/src/libiec61850/src/common/conversions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 299
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         33
      ICount:          274
      EdgeCount:       42
      CyclomaticComplexity: 11
      functionsReached:
        - StringUtils_digitsToInt
        - StringUtils_isDigit
        - getSecondsOffset
        - mktime
        - strlen
        - timegm
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/common/conversions.c:269,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/common/conversions.c:204,29'
          Dst:             strlen
        - Src:             'src/common/conversions.c:208,16'
          Dst:             StringUtils_digitsToInt
        - Src:             'src/common/conversions.c:212,17'
          Dst:             StringUtils_digitsToInt
        - Src:             'src/common/conversions.c:216,15'
          Dst:             StringUtils_digitsToInt
        - Src:             'src/common/conversions.c:220,16'
          Dst:             StringUtils_digitsToInt
        - Src:             'src/common/conversions.c:224,15'
          Dst:             StringUtils_digitsToInt
        - Src:             'src/common/conversions.c:228,19'
          Dst:             StringUtils_digitsToInt
        - Src:             'src/common/conversions.c:252,16'
          Dst:             StringUtils_isDigit
        - Src:             'src/common/conversions.c:259,36'
          Dst:             StringUtils_digitsToInt
        - Src:             'src/common/conversions.c:271,13'
          Dst:             mktime
        - Src:             'src/common/conversions.c:274,13'
          Dst:             timegm
        - Src:             'src/common/conversions.c:278,17'
          Dst:             timegm
        - Src:             'src/common/conversions.c:279,33'
          Dst:             getSecondsOffset
        - Src:             'src/common/conversions.c:285,17'
          Dst:             timegm
        - Src:             'src/common/conversions.c:286,33'
          Dst:             getSecondsOffset
    - functionName:    mktime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    timegm
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Conversions_msTimeToGeneralizedTime
      functionSourceFile: '/src/libiec61850/src/common/conversions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          70
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Conversions_intToStringBuffer
        - gmtime_r
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/conversions.c:164,5'
          Dst:             gmtime_r
        - Src:             'src/common/conversions.c:166,5'
          Dst:             Conversions_intToStringBuffer
        - Src:             'src/common/conversions.c:168,5'
          Dst:             Conversions_intToStringBuffer
        - Src:             'src/common/conversions.c:169,5'
          Dst:             Conversions_intToStringBuffer
        - Src:             'src/common/conversions.c:170,5'
          Dst:             Conversions_intToStringBuffer
        - Src:             'src/common/conversions.c:171,5'
          Dst:             Conversions_intToStringBuffer
        - Src:             'src/common/conversions.c:172,5'
          Dst:             Conversions_intToStringBuffer
        - Src:             'src/common/conversions.c:176,5'
          Dst:             Conversions_intToStringBuffer
    - functionName:    gmtime_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Conversions_intToStringBuffer
      functionSourceFile: '/src/libiec61850/src/common/conversions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          75
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MemoryAllocator_allocate
      functionSourceFile: '/src/libiec61850/src/common/simple_allocator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MemoryAllocator_getAlignedSize
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/simple_allocator.c:52,12'
          Dst:             MemoryAllocator_getAlignedSize
    - functionName:    MemoryAllocator_getAlignedSize
      functionSourceFile: '/src/libiec61850/src/common/simple_allocator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MemoryAllocator_init
      functionSourceFile: '/src/libiec61850/src/common/simple_allocator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsVariableSpecification_getExponentWidth
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_type_spec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 349
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsVariableSpecification_getArrayElementSpecification
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_type_spec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 335
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsVariableSpecification_getChildSpecificationByName
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_type_spec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          93
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:321,14'
          Dst:             strcmp
    - functionName:    MmsVariableSpecification_getChildSpecificationByIndex
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_type_spec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsVariableSpecification_getSize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_type_spec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          103
      EdgeCount:       24
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/common/mms_type_spec.c:269,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    MmsVariableSpecification_getNamedVariableRecursive
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_type_spec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          244
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - MmsVariableSpecification_getNamedVariableRecursive
        - strchr
        - strcmp
        - strlen
        - strncmp
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:207,16'
          Dst:             MmsVariableSpecification_getNamedVariableRecursive
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:210,29'
          Dst:             strchr
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:221,21'
          Dst:             strcmp
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:236,17'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:238,21'
          Dst:             strncmp
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:250,33'
          Dst:             MmsVariableSpecification_getNamedVariableRecursive
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:256,33'
          Dst:             MmsVariableSpecification_getNamedVariableRecursive
    - functionName:    strncmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    22
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsVariableSpecification_getStructureElements
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_type_spec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          70
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_add
        - LinkedList_create
        - StringUtils_copyString
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:190,31'
          Dst:             LinkedList_create
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:197,38'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:197,9'
          Dst:             LinkedList_add
    - functionName:    MmsVariableSpecification_getName
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_type_spec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsVariableSpecification_isValueOfType
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_type_spec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         49
      ICount:          275
      EdgeCount:       66
      CyclomaticComplexity: 19
      functionsReached:
        - MmsValue_getArraySize
        - MmsValue_getElement
        - MmsVariableSpecification_isValueOfType
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:126,41'
          Dst:             MmsValue_getArraySize
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:134,102'
          Dst:             MmsValue_getElement
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:134,25'
          Dst:             MmsVariableSpecification_isValueOfType
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:145,102'
          Dst:             MmsValue_getElement
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:145,25'
          Dst:             MmsVariableSpecification_isValueOfType
    - functionName:    MmsVariableSpecification_getType
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_type_spec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    directChildStrLen
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_type_spec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          60
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:61,25'
          Dst:             strlen
    - functionName:    MmsVariableSpecification_getChildValue
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_type_spec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          169
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - MmsVariableSpecification_getChildValue
        - directChildStrLen
        - strlen
        - strncmp
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:81,27'
          Dst:             directChildStrLen
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:89,17'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:91,21'
          Dst:             strncmp
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:93,37'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:99,32'
          Dst:             MmsVariableSpecification_getChildValue
    - functionName:    MmsVariableSpecification_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/common/mms_type_spec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          106
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - Memory_free
        - MmsVariableSpecification_destroy
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:36,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:44,13'
          Dst:             MmsVariableSpecification_destroy
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:47,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:51,9'
          Dst:             MmsVariableSpecification_destroy
        - Src:             'src/mms/iso_mms/common/mms_type_spec.c:54,5'
          Dst:             Memory_free
    - functionName:    mmsClient_parseIdentifyResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_identify.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          200
      EdgeCount:       24
      CyclomaticComplexity: 5
      functionsReached:
        - BerDecoder_decodeLength
        - ByteBuffer_getBuffer
        - ByteBuffer_getSize
        - StringUtils_createStringFromBufferInBufferMax
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_identify.c:89,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_identify.c:58,23'
          Dst:             ByteBuffer_getBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_identify.c:59,21'
          Dst:             ByteBuffer_getSize
        - Src:             'src/mms/iso_mms/client/mms_client_identify.c:67,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_identify.c:85,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_identify.c:92,26'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/mms/iso_mms/client/mms_client_identify.c:97,25'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/mms/iso_mms/client/mms_client_identify.c:102,24'
          Dst:             StringUtils_createStringFromBufferInBufferMax
    - functionName:    mmsClient_createIdentifyRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_identify.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_identify.c:37,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/client/mms_client_identify.c:43,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_identify.c:44,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_identify.c:45,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/client/mms_client_identify.c:47,14'
          Dst:             BerEncoder_encodeTL
    - functionName:    mmsClient_parseStatusResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          191
      EdgeCount:       38
      CyclomaticComplexity: 9
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
        - ByteBuffer_getBuffer
        - ByteBuffer_getSize
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_status.c:82,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_status.c:57,23'
          Dst:             ByteBuffer_getBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_status.c:58,21'
          Dst:             ByteBuffer_getSize
        - Src:             'src/mms/iso_mms/client/mms_client_status.c:69,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_status.c:79,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_status.c:85,37'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/client/mms_client_status.c:92,38'
          Dst:             BerDecoder_decodeUint32
    - functionName:    mmsClient_createStatusRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          58
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_encodeBoolean
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_status.c:37,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/client/mms_client_status.c:43,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_status.c:44,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_status.c:45,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/client/mms_client_status.c:47,14'
          Dst:             BerEncoder_encodeBoolean
    - functionName:    mmsClient_createWriteRequestAlternateAccessSingleIndexComponent
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_write.c'
      linkageType:     InternalLinkage
      functionLinenumber: 594
      functionLinenumberEnd: 645
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          172
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
        - Memory_free
        - createNewDomainVariableSpecification
        - deleteDataElement
        - der_encode
        - mmsClient_createAlternateAccessIndexComponent
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_deleteAlternateAccess
        - mmsClient_write_out
        - mmsMsg_createBasicDataElement
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:595,24'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:606,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:608,47'
          Dst:             createNewDomainVariableSpecification
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:612,43'
          Dst:             mmsClient_createAlternateAccessIndexComponent
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:618,49'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:619,41'
          Dst:             mmsMsg_createBasicDataElement
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:625,12'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:625,12'
          Dst:             mmsClient_write_out
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:629,5'
          Dst:             mmsClient_deleteAlternateAccess
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:632,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:633,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:638,5'
          Dst:             deleteDataElement
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:640,5'
          Dst:             Memory_free
    - functionName:    createNewDomainVariableSpecification
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_write.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          64
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
        - strlen
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:207,59'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:212,86'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:214,84'
          Dst:             strlen
    - functionName:    deleteDataElement
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_write.c'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         26
      ICount:          172
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - Memory_free
        - deleteDataElement
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:230,13'
          Dst:             deleteDataElement
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:233,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:234,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:241,13'
          Dst:             deleteDataElement
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:244,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:245,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:248,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:251,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:254,5'
          Dst:             Memory_free
    - functionName:    mmsClient_createWriteRequestComponent
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_write.c'
      linkageType:     InternalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 586
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          169
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
        - Memory_free
        - createNewDomainVariableSpecification
        - deleteDataElement
        - der_encode
        - mmsClient_createAlternateAccessComponent
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_deleteAlternateAccess
        - mmsClient_write_out
        - mmsMsg_createBasicDataElement
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:537,24'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:548,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:550,47'
          Dst:             createNewDomainVariableSpecification
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:554,43'
          Dst:             mmsClient_createAlternateAccessComponent
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:559,49'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:560,41'
          Dst:             mmsMsg_createBasicDataElement
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:566,12'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:566,12'
          Dst:             mmsClient_write_out
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:570,5'
          Dst:             mmsClient_deleteAlternateAccess
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:573,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:574,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:579,5'
          Dst:             deleteDataElement
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:581,5'
          Dst:             Memory_free
    - functionName:    mmsClient_createWriteRequestArray
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_write.c'
      linkageType:     InternalLinkage
      functionLinenumber: 478
      functionLinenumberEnd: 529
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          178
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
        - Memory_free
        - createNewDomainVariableSpecification
        - deleteDataElement
        - der_encode
        - mmsClient_createAlternateAccess
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_deleteAlternateAccess
        - mmsClient_write_out
        - mmsMsg_createBasicDataElement
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:479,24'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:491,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:493,47'
          Dst:             createNewDomainVariableSpecification
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:494,43'
          Dst:             mmsClient_createAlternateAccess
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:500,49'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:501,41'
          Dst:             mmsMsg_createBasicDataElement
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:507,12'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:507,12'
          Dst:             mmsClient_write_out
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:511,5'
          Dst:             mmsClient_deleteAlternateAccess
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:515,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:516,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:522,5'
          Dst:             deleteDataElement
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:524,5'
          Dst:             Memory_free
    - functionName:    mmsClient_createWriteRequestNamedVariableList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_write.c'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - int
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          282
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - LinkedList_getNext
        - LinkedList_size
        - Memory_calloc
        - Memory_free
        - StringUtils_copyString
        - deleteDataElement
        - der_encode
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
        - mmsMsg_createBasicDataElement
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:399,24'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:411,105'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:412,95'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:417,122'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:418,112'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:419,120'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:420,110'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:424,110'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:425,100'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:431,25'
          Dst:             LinkedList_size
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:435,49'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:439,31'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:447,45'
          Dst:             mmsMsg_createBasicDataElement
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:449,24'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:456,12'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:456,12'
          Dst:             mmsClient_write_out
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:462,9'
          Dst:             deleteDataElement
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:465,5'
          Dst:             Memory_free
    - functionName:    mmsClient_createWriteRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_write.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          161
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
        - Memory_free
        - createNewDomainVariableSpecification
        - deleteDataElement
        - der_encode
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
        - mmsMsg_createBasicDataElement
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:332,21'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:344,28'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:346,4'
          Dst:             createNewDomainVariableSpecification
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:351,46'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:352,38'
          Dst:             mmsMsg_createBasicDataElement
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:356,9'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:356,9'
          Dst:             mmsClient_write_out
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:362,2'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:363,2'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:368,2'
          Dst:             deleteDataElement
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:370,2'
          Dst:             Memory_free
    - functionName:    mmsClient_createWriteMultipleItemsRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_write.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 326
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          259
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - LinkedList_getNext
        - LinkedList_size
        - Memory_calloc
        - Memory_free
        - createNewDomainVariableSpecification
        - deleteDataElement
        - der_encode
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
        - mmsMsg_createBasicDataElement
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:261,24'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:268,25'
          Dst:             LinkedList_size
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:275,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:280,49'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:284,23'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:285,31'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:295,21'
          Dst:             createNewDomainVariableSpecification
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:297,45'
          Dst:             mmsMsg_createBasicDataElement
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:299,16'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:300,24'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:305,12'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:305,12'
          Dst:             mmsClient_write_out
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:312,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:313,9'
          Dst:             deleteDataElement
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:316,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:320,5'
          Dst:             Memory_free
    - functionName:    mapDataAccessErrorToMmsError
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_write.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          77
      EdgeCount:       28
      CyclomaticComplexity: 15
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_write.c:38,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    mmsClient_parseWriteResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_write.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          142
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
        - mapDataAccessErrorToMmsError
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:160,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:176,22'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:185,21'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:188,29'
          Dst:             mapDataAccessErrorToMmsError
    - functionName:    mmsClient_parseWriteMultipleItemsResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_write.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          232
      EdgeCount:       53
      CyclomaticComplexity: 15
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
        - LinkedList_add
        - LinkedList_create
        - LinkedList_destroyDeep
        - MmsValue_delete
        - MmsValue_newDataAccessError
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:83,17'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:91,29'
          Dst:             LinkedList_create
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:100,21'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:106,59'
          Dst:             MmsValue_newDataAccessError
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:106,20'
          Dst:             LinkedList_add
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:111,24'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:114,59'
          Dst:             MmsValue_newDataAccessError
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:114,20'
          Dst:             LinkedList_add
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:137,13'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/mms/iso_mms/client/mms_client_write.c:137,13'
          Dst:             MmsValue_delete
    - functionName:    parseDirectoryEntry
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 540
      functionLinenumberEnd: 609
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          179
      EdgeCount:       28
      CyclomaticComplexity: 7
      functionsReached:
        - BerDecoder_decodeLength
        - parseFileAttributes
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_files.c:559,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:551,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:567,22'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:588,18'
          Dst:             parseFileAttributes
    - functionName:    parseFileAttributes
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 492
      functionLinenumberEnd: 535
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          137
      EdgeCount:       26
      CyclomaticComplexity: 6
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
        - Conversions_generalizedTimeToMsTime
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_files.c:504,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:500,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:508,29'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:521,33'
          Dst:             Conversions_generalizedTimeToMsTime
    - functionName:    mmsClient_createFileCloseRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 862
      functionLinenumberEnd: 887
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          82
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_encodeOctetString
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - BerInteger_setInt32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:863,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:871,5'
          Dst:             BerInteger_setInt32
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:878,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:879,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:880,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:884,14'
          Dst:             BerEncoder_encodeOctetString
    - functionName:    mmsMsg_parseFileReadResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 790
      functionLinenumberEnd: 858
      functionDepth:   0
      returnType:      bool
      argCount:        8
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          186
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - BerDecoder_decodeBoolean
        - BerDecoder_decodeLength
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_files.c:829,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:815,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:825,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:839,28'
          Dst:             BerDecoder_decodeBoolean
    - functionName:    mmsMsg_parseFileOpenResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 727
      functionLinenumberEnd: 785
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          169
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached:
        - BerDecoder_decodeInt32
        - BerDecoder_decodeLength
        - parseFileAttributes
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_files.c:762,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:748,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:758,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:765,23'
          Dst:             BerDecoder_decodeInt32
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:770,18'
          Dst:             parseFileAttributes
    - functionName:    parseListOfDirectoryEntries
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 614
      functionLinenumberEnd: 654
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          133
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - BerDecoder_decodeLength
        - parseDirectoryEntry
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_files.c:637,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:622,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:633,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:640,13'
          Dst:             parseDirectoryEntry
    - functionName:    mmsClient_parseFileDirectoryResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 659
      functionLinenumberEnd: 722
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          182
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - BerDecoder_decodeBoolean
        - BerDecoder_decodeLength
        - parseListOfDirectoryEntries
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_files.c:698,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:682,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:694,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:701,13'
          Dst:             parseListOfDirectoryEntries
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:706,27'
          Dst:             BerDecoder_decodeBoolean
    - functionName:    mmsClient_createObtainFileRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 459
      functionLinenumberEnd: 488
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          100
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeLength
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - encodeFileSpecification
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:460,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:464,22'
          Dst:             encodeFileSpecification
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:466,22'
          Dst:             encodeFileSpecification
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:469,32'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:474,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:475,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:476,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:481,14'
          Dst:             BerEncoder_encodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:483,14'
          Dst:             encodeFileSpecification
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:485,14'
          Dst:             encodeFileSpecification
    - functionName:    encodeFileSpecification
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 365
      functionLinenumberEnd: 381
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - char
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeOctetString
        - BerEncoder_encodeTL
        - strlen
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:366,35'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:367,36'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:372,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:373,18'
          Dst:             BerEncoder_encodeOctetString
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:379,38'
          Dst:             BerEncoder_determineLengthSize
    - functionName:    mmsClient_createFileRenameRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 425
      functionLinenumberEnd: 454
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          100
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeLength
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - encodeFileSpecification
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:426,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:430,22'
          Dst:             encodeFileSpecification
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:432,22'
          Dst:             encodeFileSpecification
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:435,32'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:440,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:441,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:442,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:447,14'
          Dst:             BerEncoder_encodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:449,14'
          Dst:             encodeFileSpecification
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:451,14'
          Dst:             encodeFileSpecification
    - functionName:    mmsClient_createFileDirectoryRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 420
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          145
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeLength
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - encodeFileSpecification
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:387,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:394,26'
          Dst:             encodeFileSpecification
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:397,26'
          Dst:             encodeFileSpecification
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:399,32'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:404,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:405,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:406,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:411,14'
          Dst:             BerEncoder_encodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:414,18'
          Dst:             encodeFileSpecification
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:417,18'
          Dst:             encodeFileSpecification
    - functionName:    mmsClient_createFileReadRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          85
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_encodeOctetString
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - BerInteger_setInt32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:335,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:343,5'
          Dst:             BerInteger_setInt32
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:352,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:353,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:354,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:358,14'
          Dst:             BerEncoder_encodeOctetString
    - functionName:    mmsClient_createFileDeleteRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 330
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          97
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeLength
        - BerEncoder_encodeOctetString
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:305,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:307,35'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:308,33'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:313,36'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:318,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:319,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:320,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:326,14'
          Dst:             BerEncoder_encodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:327,14'
          Dst:             BerEncoder_encodeOctetString
    - functionName:    mmsClient_createFileOpenRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          120
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeLength
        - BerEncoder_encodeOctetString
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - BerEncoder_encodeUInt32WithTL
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:269,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:271,35'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:272,33'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:276,40'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:277,36'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:280,32'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:285,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:286,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:287,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:292,14'
          Dst:             BerEncoder_encodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:294,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:295,14'
          Dst:             BerEncoder_encodeOctetString
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:297,14'
          Dst:             BerEncoder_encodeUInt32WithTL
    - functionName:    mmsClient_closeOutstandingOpenFiles
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          63
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - FileSystem_closeFile
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:256,13'
          Dst:             FileSystem_closeFile
    - functionName:    mmsClient_handleFileCloseRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          100
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - BerDecoder_decodeInt32
        - FileSystem_closeFile
        - Hal_getMonotonicTimeInMs
        - getFrsm
        - mmsMsg_createFileCloseResponse
        - mmsMsg_createServiceErrorPdu
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:224,22'
          Dst:             BerDecoder_decodeInt32
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:226,37'
          Dst:             getFrsm
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:231,44'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:235,13'
          Dst:             FileSystem_closeFile
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:241,9'
          Dst:             mmsMsg_createFileCloseResponse
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:244,9'
          Dst:             mmsMsg_createServiceErrorPdu
    - functionName:    getFrsm
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          68
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmsClient_handleFileReadRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - BerDecoder_decodeInt32
        - Hal_getMonotonicTimeInMs
        - getFrsm
        - mmsMsg_createFileReadResponse
        - mmsMsg_createServiceErrorPdu
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:197,22'
          Dst:             BerDecoder_decodeInt32
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:202,37'
          Dst:             getFrsm
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:207,44'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:214,9'
          Dst:             mmsMsg_createFileReadResponse
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:217,9'
          Dst:             mmsMsg_createServiceErrorPdu
    - functionName:    getNextFrsmId
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getFreeFrsm
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmsClient_handleFileOpenRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_files.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          222
      EdgeCount:       40
      CyclomaticComplexity: 9
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
        - Hal_getMonotonicTimeInMs
        - MmsConnection_getFilestoreBasepath
        - getFreeFrsm
        - getNextFrsmId
        - mmsClient_getMatchingObtainFileRequest
        - mmsMsg_createFileOpenResponse
        - mmsMsg_createMmsRejectPdu
        - mmsMsg_createServiceErrorPdu
        - mmsMsg_isFilenameSave
        - mmsMsg_openFile
        - mmsMsg_parseFileName
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_files.c:107,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:102,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:111,18'
          Dst:             mmsMsg_parseFileName
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:119,28'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:135,13'
          Dst:             mmsMsg_isFilenameSave
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:142,13'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:146,45'
          Dst:             getFreeFrsm
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:150,53'
          Dst:             mmsClient_getMatchingObtainFileRequest
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:157,47'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:161,37'
          Dst:             MmsConnection_getFilestoreBasepath
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:161,21'
          Dst:             mmsMsg_openFile
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:167,36'
          Dst:             getNextFrsmId
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:170,51'
          Dst:             MmsConnection_getFilestoreBasepath
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:170,21'
          Dst:             mmsMsg_createFileOpenResponse
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:174,21'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:177,17'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:186,5'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/client/mms_client_files.c:190,5'
          Dst:             mmsMsg_createMmsRejectPdu
    - functionName:    mmsClient_createGetNameListRequestDomainOrVMDSpecific
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_get_namelist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          137
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_calloc
        - StringUtils_copyString
        - asn_long2INTEGER
        - der_encode
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:207,21'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:217,44'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:218,44'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:219,34'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:228,59'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:236,2'
          Dst:             asn_long2INTEGER
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:240,9'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:240,9'
          Dst:             mmsClient_write_out
    - functionName:    mmsClient_parseGetNameListResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_get_namelist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         48
      ICount:          338
      EdgeCount:       67
      CyclomaticComplexity: 21
      functionsReached:
        - BerDecoder_decodeLength
        - LinkedList_create
        - LinkedList_destroy
        - LinkedList_getLastElement
        - LinkedList_insertAfter
        - StringUtils_createStringFromBuffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:129,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:136,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:144,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:150,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:156,21'
          Dst:             LinkedList_create
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:158,26'
          Dst:             LinkedList_getLastElement
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:164,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:167,30'
          Dst:             StringUtils_createStringFromBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:169,19'
          Dst:             LinkedList_insertAfter
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:179,12'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:195,9'
          Dst:             LinkedList_destroy
    - functionName:    mmsClient_createMmsGetNameListRequestAssociationSpecific
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_get_namelist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          92
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
        - StringUtils_copyString
        - asn_long2INTEGER
        - der_encode
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:75,21'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:86,44'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:87,44'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:88,34'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:97,2'
          Dst:             asn_long2INTEGER
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:102,9'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:102,9'
          Dst:             mmsClient_write_out
    - functionName:    mmsClient_createMmsGetNameListRequestVMDspecific
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_get_namelist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          92
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
        - StringUtils_copyString
        - asn_long2INTEGER
        - der_encode
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:38,21'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:48,44'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:49,44'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:50,34'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:58,2'
          Dst:             asn_long2INTEGER
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:63,9'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_get_namelist.c:63,9'
          Dst:             mmsClient_write_out
    - functionName:    mmsClient_createGetVariableAccessAttributesRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_get_var_access.c'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          161
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - der_encode
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_get_var_access.c:173,24'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_get_var_access.c:189,68'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_get_var_access.c:191,66'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_get_var_access.c:196,56'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_get_var_access.c:201,12'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_get_var_access.c:201,12'
          Dst:             mmsClient_write_out
    - functionName:    createTypeSpecification
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_get_var_access.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          308
      EdgeCount:       25
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
        - StringUtils_createStringFromBuffer
        - asn_INTEGER2long
        - createTypeSpecification
        - printf
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_get_var_access.c:39,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_get_var_access.c:37,13'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_get_var_access.c:49,21'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_get_var_access.c:55,30'
          Dst:             StringUtils_createStringFromBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_get_var_access.c:60,25'
          Dst:             createTypeSpecification
        - Src:             'src/mms/iso_mms/client/mms_client_get_var_access.c:72,13'
          Dst:             asn_INTEGER2long
        - Src:             'src/mms/iso_mms/client/mms_client_get_var_access.c:77,21'
          Dst:             createTypeSpecification
        - Src:             'src/mms/iso_mms/client/mms_client_get_var_access.c:125,9'
          Dst:             printf
    - functionName:    mmsClient_parseGetVariableAccessAttributesResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_get_var_access.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          104
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ByteBuffer_getBuffer
        - ByteBuffer_getSize
        - ber_decode
        - createTypeSpecification
        - mmsClient_getInvokeId
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_get_var_access.c:139,31'
          Dst:             ByteBuffer_getBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_get_var_access.c:139,62'
          Dst:             ByteBuffer_getSize
        - Src:             'src/mms/iso_mms/client/mms_client_get_var_access.c:138,27'
          Dst:             ber_decode
        - Src:             'src/mms/iso_mms/client/mms_client_get_var_access.c:146,29'
          Dst:             mmsClient_getInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_get_var_access.c:156,28'
          Dst:             createTypeSpecification
    - functionName:    mmsClient_createAlternateAccessIndexComponent
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          151
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
        - asn_long2INTEGER
        - mmsClient_createAlternateAccessComponent
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:185,63'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:187,70'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:188,72'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:191,84'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:202,9'
          Dst:             asn_long2INTEGER
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:204,104'
          Dst:             mmsClient_createAlternateAccessComponent
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:215,9'
          Dst:             asn_long2INTEGER
    - functionName:    mmsClient_createAlternateAccessComponent
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          192
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
        - StringUtils_copyString
        - StringUtils_copySubString
        - mmsClient_createAlternateAccessComponent
        - strchr
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:143,63'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:145,70'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:146,72'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:149,84'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:151,29'
          Dst:             strchr
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:161,24'
          Dst:             StringUtils_copySubString
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:164,104'
          Dst:             mmsClient_createAlternateAccessComponent
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:167,20'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:175,24'
          Dst:             StringUtils_copyString
    - functionName:    mmsClient_deleteAlternateAccess
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          234
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - Memory_free
        - mmsClient_deleteAlternateAccess
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:114,10'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:119,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:124,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:130,13'
          Dst:             mmsClient_deleteAlternateAccess
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:134,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:135,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:136,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:137,5'
          Dst:             Memory_free
    - functionName:    mmsClient_createAlternateAccess
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          145
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
        - asn_long2INTEGER
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:73,63'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:75,70'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:76,72'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:79,84'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:90,9'
          Dst:             asn_long2INTEGER
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:95,9'
          Dst:             asn_long2INTEGER
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:104,9'
          Dst:             asn_long2INTEGER
    - functionName:    mmsClient_createConfirmedRequestPdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
        - asn_long2INTEGER
      functionUses:    22
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:62,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:65,2'
          Dst:             asn_long2INTEGER
    - functionName:    mmsClient_getInvokeId
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - asn_INTEGER2long
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:53,2'
          Dst:             asn_INTEGER2long
    - functionName:    mmsClient_write_out
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ByteBuffer_append
      functionUses:    22
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_common.c:37,25'
          Dst:             ByteBuffer_append
    - functionName:    createAlternateAccessComponent
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_read.c'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 633
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          192
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
        - StringUtils_copyString
        - StringUtils_copySubString
        - createAlternateAccessComponent
        - strchr
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:597,63'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:599,70'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:600,72'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:603,84'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:605,29'
          Dst:             strchr
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:615,15'
          Dst:             StringUtils_copySubString
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:618,104'
          Dst:             createAlternateAccessComponent
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:621,25'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:629,15'
          Dst:             StringUtils_copyString
    - functionName:    createListOfVariables
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_read.c'
      linkageType:     InternalLinkage
      functionLinenumber: 807
      functionLinenumberEnd: 815
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:811,13'
          Dst:             Memory_calloc
    - functionName:    mmsClient_createReadRequestMultipleValues
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_read.c'
      linkageType:     InternalLinkage
      functionLinenumber: 824
      functionLinenumberEnd: 860
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          125
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_getNext
        - LinkedList_size
        - Memory_free
        - createListOfVariables
        - createReadRequest
        - createVariableIdentifier
        - der_encode
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:825,24'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:827,34'
          Dst:             createReadRequest
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:831,23'
          Dst:             LinkedList_size
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:833,40'
          Dst:             createListOfVariables
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:839,20'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:840,25'
          Dst:             createVariableIdentifier
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:846,12'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:846,12'
          Dst:             mmsClient_write_out
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:850,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:852,5'
          Dst:             Memory_free
    - functionName:    createReadRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_read.c'
      linkageType:     InternalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    createVariableIdentifier
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_read.c'
      linkageType:     InternalLinkage
      functionLinenumber: 722
      functionLinenumberEnd: 732
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          64
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:723,70'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:728,102'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:730,100'
          Dst:             strlen
    - functionName:    mmsClient_createReadRequestAlternateAccessSingleIndexComponent
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_read.c'
      linkageType:     InternalLinkage
      functionLinenumber: 773
      functionLinenumberEnd: 802
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          113
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
        - createReadRequest
        - createVariableIdentifier
        - der_encode
        - mmsClient_createAlternateAccessIndexComponent
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:774,24'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:775,34'
          Dst:             createReadRequest
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:781,105'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:784,47'
          Dst:             createVariableIdentifier
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:788,43'
          Dst:             mmsClient_createAlternateAccessIndexComponent
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:792,12'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:792,12'
          Dst:             mmsClient_write_out
    - functionName:    mmsClient_createReadRequestAlternateAccessIndex
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_read.c'
      linkageType:     InternalLinkage
      functionLinenumber: 738
      functionLinenumberEnd: 767
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          113
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
        - createReadRequest
        - createVariableIdentifier
        - der_encode
        - mmsClient_createAlternateAccess
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:739,24'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:740,34'
          Dst:             createReadRequest
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:746,105'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:749,47'
          Dst:             createVariableIdentifier
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:753,43'
          Dst:             mmsClient_createAlternateAccess
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:757,12'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:757,12'
          Dst:             mmsClient_write_out
    - functionName:    deleteAlternateAccessComponent
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_read.c'
      linkageType:     InternalLinkage
      functionLinenumber: 638
      functionLinenumberEnd: 651
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          135
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - Memory_free
        - deleteAlternateAccessComponent
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:640,9'
          Dst:             deleteAlternateAccessComponent
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:643,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:645,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:647,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:648,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:649,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:650,5'
          Dst:             Memory_free
    - functionName:    createNewVariableSpecification
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_read.c'
      linkageType:     InternalLinkage
      functionLinenumber: 655
      functionLinenumberEnd: 681
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          146
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - Memory_calloc
        - createAlternateAccessComponent
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:656,59'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:663,95'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:665,93'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:670,82'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:675,83'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:679,36'
          Dst:             createAlternateAccessComponent
    - functionName:    mmsClient_createReadRequestComponent
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_read.c'
      linkageType:     InternalLinkage
      functionLinenumber: 689
      functionLinenumberEnd: 717
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          120
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
        - Memory_free
        - createNewVariableSpecification
        - createReadRequest
        - deleteAlternateAccessComponent
        - der_encode
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:690,24'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:692,34'
          Dst:             createReadRequest
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:700,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:701,84'
          Dst:             createNewVariableSpecification
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:705,12'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:705,12'
          Dst:             mmsClient_write_out
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:709,5'
          Dst:             deleteAlternateAccessComponent
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:711,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:712,5'
          Dst:             Memory_free
    - functionName:    mmsClient_createReadRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_read.c'
      linkageType:     InternalLinkage
      functionLinenumber: 546
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          174
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
        - Memory_free
        - createReadRequest
        - der_encode
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:547,24'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:549,34'
          Dst:             createReadRequest
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:556,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:559,62'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:569,98'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:571,96'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:576,86'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:581,12'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:581,12'
          Dst:             mmsClient_write_out
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:585,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:586,5'
          Dst:             Memory_free
    - functionName:    mmsClient_createReadAssociationSpecificNamedVariableListRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_read.c'
      linkageType:     InternalLinkage
      functionLinenumber: 510
      functionLinenumberEnd: 538
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          89
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
        - StringUtils_copyString
        - createReadRequest
        - der_encode
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:511,24'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:513,34'
          Dst:             createReadRequest
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:516,61'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:528,52'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:529,47'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:533,12'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:533,12'
          Dst:             mmsClient_write_out
    - functionName:    mmsClient_createReadNamedVariableListRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_read.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 501
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          135
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_calloc
        - StringUtils_copyString
        - createReadRequest
        - der_encode
        - mmsClient_createConfirmedRequestPdu
        - mmsClient_write_out
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:463,24'
          Dst:             mmsClient_createConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:465,34'
          Dst:             createReadRequest
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:468,61'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:481,69'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:482,64'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:484,67'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:485,62'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:490,57'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:491,52'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:496,12'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:496,12'
          Dst:             mmsClient_write_out
    - functionName:    mmsClient_parseReadResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_read.c'
      linkageType:     InternalLinkage
      functionLinenumber: 420
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          117
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ByteBuffer_getBuffer
        - ByteBuffer_getSize
        - ber_decode
        - mmsClient_getInvokeId
        - mmsClient_parseListOfAccessResults
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:426,31'
          Dst:             ByteBuffer_getBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:426,62'
          Dst:             ByteBuffer_getSize
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:425,27'
          Dst:             ber_decode
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:432,29'
          Dst:             mmsClient_getInvokeId
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:439,29'
          Dst:             mmsClient_parseListOfAccessResults
    - functionName:    mmsClient_parseListOfAccessResults
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_read.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 411
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         161
      ICount:          1133
      EdgeCount:       213
      CyclomaticComplexity: 54
      functionsReached:
        - BerInteger_createFromBuffer
        - Memory_calloc
        - Memory_malloc
        - MmsValue_createEmptyArray
        - MmsValue_delete
        - MmsValue_newBoolean
        - MmsValue_newDataAccessError
        - MmsValue_newIntegerFromBerInteger
        - MmsValue_newUnsignedFromBerInteger
        - MmsValue_setElement
        - memcpyReverseByteOrder
        - mmsMsg_parseDataElement
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:44,21'
          Dst:             MmsValue_createEmptyArray
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:68,25'
          Dst:             MmsValue_newDataAccessError
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:71,25'
          Dst:             MmsValue_newDataAccessError
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:80,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:83,66'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:91,64'
          Dst:             mmsMsg_parseDataElement
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:99,29'
          Dst:             MmsValue_delete
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:119,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:125,70'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:132,68'
          Dst:             mmsMsg_parseDataElement
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:140,33'
          Dst:             MmsValue_delete
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:165,41'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:174,65'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:198,25'
          Dst:             BerInteger_createFromBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:200,25'
          Dst:             MmsValue_newIntegerFromBerInteger
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:215,25'
          Dst:             BerInteger_createFromBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:218,25'
          Dst:             MmsValue_newUnsignedFromBerInteger
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:232,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:244,21'
          Dst:             memcpyReverseByteOrder
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:252,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:264,21'
          Dst:             memcpyReverseByteOrder
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:282,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:287,62'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:309,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:314,62'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:335,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:351,21'
          Dst:             MmsValue_newBoolean
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:359,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:380,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:387,63'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:401,21'
          Dst:             MmsValue_newDataAccessError
        - Src:             'src/mms/iso_mms/client/mms_client_read.c:405,13'
          Dst:             MmsValue_setElement
    - functionName:    parseJournalVariable
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_journals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          150
      EdgeCount:       27
      CyclomaticComplexity: 6
      functionsReached:
        - BerDecoder_decodeLength
        - Memory_malloc
        - MmsValue_decodeMmsData
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_journals.c:57,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:47,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:62,48'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:77,42'
          Dst:             MmsValue_decodeMmsData
    - functionName:    parseJournalVariables
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_journals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          145
      EdgeCount:       30
      CyclomaticComplexity: 7
      functionsReached:
        - BerDecoder_decodeLength
        - LinkedList_add
        - Memory_calloc
        - Memory_free
        - MmsValue_delete
        - parseJournalVariable
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_journals.c:115,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:105,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:120,21'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:124,25'
          Dst:             parseJournalVariable
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:126,25'
          Dst:             LinkedList_add
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:131,29'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:134,29'
          Dst:             MmsValue_delete
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:136,25'
          Dst:             Memory_free
    - functionName:    parseData
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_journals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          114
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - BerDecoder_decodeLength
        - LinkedList_create
        - parseJournalVariables
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_journals.c:184,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:174,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:195,50'
          Dst:             LinkedList_create
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:206,21'
          Dst:             parseJournalVariables
    - functionName:    parseEntryContent
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_journals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          145
      EdgeCount:       27
      CyclomaticComplexity: 6
      functionsReached:
        - BerDecoder_decodeLength
        - MmsValue_newBinaryTime
        - parseData
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_journals.c:244,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:234,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:257,51'
          Dst:             MmsValue_newBinaryTime
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:259,51'
          Dst:             MmsValue_newBinaryTime
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:270,12'
          Dst:             parseData
    - functionName:    parseJournalEntry
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_journals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          159
      EdgeCount:       31
      CyclomaticComplexity: 7
      functionsReached:
        - BerDecoder_decodeLength
        - LinkedList_add
        - Memory_calloc
        - MmsJournalEntry_destroy
        - MmsValue_newOctetString
        - MmsValue_setOctetString
        - parseEntryContent
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_journals.c:318,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:294,54'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:308,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:330,41'
          Dst:             MmsValue_newOctetString
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:333,21'
          Dst:             MmsValue_setOctetString
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:342,17'
          Dst:             parseEntryContent
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:360,5'
          Dst:             LinkedList_add
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:366,5'
          Dst:             MmsJournalEntry_destroy
    - functionName:    mmsClient_createReadJournalRequestStartAfter
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_journals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 581
      functionLinenumberEnd: 644
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          207
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeLength
        - BerEncoder_encodeOctetString
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:583,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:585,35'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:586,33'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:588,33'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:589,31'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:593,36'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:601,43'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:606,36'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:614,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:615,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:616,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:622,14'
          Dst:             BerEncoder_encodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:625,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:627,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:629,14'
          Dst:             BerEncoder_encodeOctetString
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:630,14'
          Dst:             BerEncoder_encodeOctetString
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:633,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:636,14'
          Dst:             BerEncoder_encodeOctetString
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:640,14'
          Dst:             BerEncoder_encodeOctetString
    - functionName:    mmsClient_createReadJournalRequestWithTimeRange
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_journals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 576
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          210
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeLength
        - BerEncoder_encodeOctetString
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:517,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:519,35'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:520,33'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:522,33'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:523,31'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:527,37'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:539,36'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:547,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:548,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:549,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:555,14'
          Dst:             BerEncoder_encodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:558,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:560,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:562,14'
          Dst:             BerEncoder_encodeOctetString
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:563,14'
          Dst:             BerEncoder_encodeOctetString
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:566,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:567,14'
          Dst:             BerEncoder_encodeOctetString
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:571,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:572,14'
          Dst:             BerEncoder_encodeOctetString
    - functionName:    parseListOfJournalEntries
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_journals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 373
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          98
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - BerDecoder_decodeLength
        - parseJournalEntry
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_journals.c:390,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:380,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:392,17'
          Dst:             parseJournalEntry
    - functionName:    mmsClient_parseReadJournalResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/client/mms_client_journals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 510
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          219
      EdgeCount:       43
      CyclomaticComplexity: 11
      functionsReached:
        - BerDecoder_decodeBoolean
        - BerDecoder_decodeLength
        - ByteBuffer_getBuffer
        - ByteBuffer_getSize
        - LinkedList_create
        - LinkedList_destroyDeep
        - MmsJournalEntry_destroy
        - parseListOfJournalEntries
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/client/mms_client_journals.c:454,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:415,23'
          Dst:             ByteBuffer_getBuffer
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:416,21'
          Dst:             ByteBuffer_getSize
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:441,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:451,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:462,17'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:462,17'
          Dst:             MmsJournalEntry_destroy
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:468,34'
          Dst:             LinkedList_create
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:472,26'
          Dst:             parseListOfJournalEntries
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:474,25'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:474,25'
          Dst:             MmsJournalEntry_destroy
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:489,32'
          Dst:             BerDecoder_decodeBoolean
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:499,13'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/mms/iso_mms/client/mms_client_journals.c:499,13'
          Dst:             MmsJournalEntry_destroy
    - functionName:    encodeFileSpecification
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1012
      functionLinenumberEnd: 1028
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - char
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeOctetString
        - BerEncoder_encodeTL
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1013,35'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1014,36'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1019,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1020,18'
          Dst:             BerEncoder_encodeOctetString
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1026,38'
          Dst:             BerEncoder_determineLengthSize
    - functionName:    openDirectory
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - FileSystem_openDirectory
        - mmsMsg_createExtendedFilename
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:166,5'
          Dst:             mmsMsg_createExtendedFilename
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:173,12'
          Dst:             FileSystem_openDirectory
    - functionName:    addFileEntriesToResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1033
      functionLinenumberEnd: 1116
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          221
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeTL
        - Conversions_msTimeToGeneralizedTime
        - FileSystem_closeDirectory
        - FileSystem_readDirectory
        - StringUtils_appendString
        - addFileEntriesToResponse
        - encodeFileAttributes
        - encodeFileSpecification
        - getFileInfo
        - openDirectory
        - strcmp
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1034,31'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1036,33'
          Dst:             openDirectory
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1041,26'
          Dst:             FileSystem_readDirectory
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1050,21'
          Dst:             StringUtils_appendString
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1053,13'
          Dst:             StringUtils_appendString
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1055,22'
          Dst:             addFileEntriesToResponse
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1061,24'
          Dst:             FileSystem_readDirectory
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1064,9'
          Dst:             FileSystem_closeDirectory
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1070,17'
          Dst:             strcmp
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1081,17'
          Dst:             getFileInfo
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1085,17'
          Dst:             Conversions_msTimeToGeneralizedTime
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1087,42'
          Dst:             encodeFileAttributes
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1089,36'
          Dst:             encodeFileSpecification
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1093,44'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1104,30'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1105,30'
          Dst:             encodeFileSpecification
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1106,30'
          Dst:             encodeFileAttributes
    - functionName:    getFileInfo
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - FileSystem_getFileInfo
        - mmsMsg_createExtendedFilename
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:136,5'
          Dst:             mmsMsg_createExtendedFilename
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:143,12'
          Dst:             FileSystem_getFileInfo
    - functionName:    encodeFileAttributes
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - char
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          79
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeOctetString
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:110,31'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:112,29'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:115,13'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:123,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:124,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:125,18'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:126,18'
          Dst:             BerEncoder_encodeOctetString
    - functionName:    createFileDirectoryResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1122
      functionLinenumberEnd: 1201
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          253
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeBoolean
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - addFileEntriesToResponse
        - mmsMsg_createServiceErrorPdu
        - mmsMsg_isFilenameSave
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1134,13'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1138,27'
          Dst:             mmsMsg_isFilenameSave
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1139,35'
          Dst:             mmsMsg_isFilenameSave
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1144,9'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1149,18'
          Dst:             addFileEntriesToResponse
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1157,9'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1164,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1168,45'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1171,13'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1177,28'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1181,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1183,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1184,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1187,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1188,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1190,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1198,18'
          Dst:             BerEncoder_encodeBoolean
    - functionName:    mmsServer_handleFileDirectoryRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1299
      functionLinenumberEnd: 1371
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          201
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - BerDecoder_decodeLength
        - MmsServerConnection_getFilesystemBasepath
        - createFileDirectoryResponse
        - mmsMsg_createMmsRejectPdu
        - mmsMsg_createServiceErrorPdu
        - mmsMsg_parseFileName
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_file_service.c:1322,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1314,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1318,13'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1325,18'
          Dst:             mmsMsg_parseFileName
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1329,18'
          Dst:             strcmp
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1329,50'
          Dst:             strcmp
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1329,82'
          Dst:             strcmp
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1335,18'
          Dst:             mmsMsg_parseFileName
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1348,13'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1364,13'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1369,33'
          Dst:             MmsServerConnection_getFilesystemBasepath
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1369,5'
          Dst:             createFileDirectoryResponse
    - functionName:    renameFile
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - FileSystem_renameFile
        - mmsMsg_createExtendedFilename
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:183,5'
          Dst:             mmsMsg_createExtendedFilename
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:184,5'
          Dst:             mmsMsg_createExtendedFilename
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:194,12'
          Dst:             FileSystem_renameFile
    - functionName:    mmsServer_handleFileRenameRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1206
      functionLinenumberEnd: 1294
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          221
      EdgeCount:       46
      CyclomaticComplexity: 12
      functionsReached:
        - BerDecoder_decodeLength
        - MmsServerConnection_getFilesystemBasepath
        - createNullResponseExtendedTag
        - mmsMsg_createMmsRejectPdu
        - mmsMsg_createServiceErrorPdu
        - mmsMsg_isFilenameSave
        - mmsMsg_parseFileName
        - renameFile
        - strlen
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_file_service.c:1223,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1215,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1219,13'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1226,18'
          Dst:             mmsMsg_parseFileName
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1235,18'
          Dst:             mmsMsg_parseFileName
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1253,10'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1253,44'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1255,14'
          Dst:             mmsMsg_isFilenameSave
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1255,67'
          Dst:             mmsMsg_isFilenameSave
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1260,13'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1274,17'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1279,24'
          Dst:             MmsServerConnection_getFilesystemBasepath
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1279,13'
          Dst:             renameFile
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1282,13'
          Dst:             createNullResponseExtendedTag
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1289,13'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1293,9'
          Dst:             mmsMsg_createMmsRejectPdu
    - functionName:    createNullResponseExtendedTag
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          65
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:38,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:46,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:48,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:49,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:52,14'
          Dst:             BerEncoder_encodeTL
    - functionName:    mmsServer_handleFileCloseRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 988
      functionLinenumberEnd: 1008
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BerDecoder_decodeInt32
        - FileSystem_closeFile
        - getFrsm
        - mmsMsg_createFileCloseResponse
        - mmsMsg_createServiceErrorPdu
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:989,22'
          Dst:             BerDecoder_decodeInt32
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:991,37'
          Dst:             getFrsm
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:995,9'
          Dst:             FileSystem_closeFile
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:999,9'
          Dst:             mmsMsg_createFileCloseResponse
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:1006,9'
          Dst:             mmsMsg_createServiceErrorPdu
    - functionName:    getFrsm
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          68
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmsMsg_createFileCloseResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 981
      functionLinenumberEnd: 983
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - createNullResponseExtendedTag
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:982,5'
          Dst:             createNullResponseExtendedTag
    - functionName:    mmsServer_handleFileReadRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 965
      functionLinenumberEnd: 977
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BerDecoder_decodeInt32
        - getFrsm
        - mmsMsg_createFileReadResponse
        - mmsMsg_createServiceErrorPdu
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:966,22'
          Dst:             BerDecoder_decodeInt32
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:971,37'
          Dst:             getFrsm
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:974,9'
          Dst:             mmsMsg_createFileReadResponse
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:976,9'
          Dst:             mmsMsg_createServiceErrorPdu
    - functionName:    mmsMsg_createFileReadResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 893
      functionLinenumberEnd: 960
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          193
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeBoolean
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - FileSystem_readFile
        - mmsMsg_createServiceErrorPdu
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:917,29'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:921,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:924,28'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:930,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:932,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:933,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:936,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:938,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:941,20'
          Dst:             FileSystem_readFile
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:949,9'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:957,18'
          Dst:             BerEncoder_encodeBoolean
    - functionName:    mmsServer_handleObtainFileRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 717
      functionLinenumberEnd: 887
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          354
      EdgeCount:       62
      CyclomaticComplexity: 15
      functionsReached:
        - BerDecoder_decodeLength
        - FileSystem_getFileInfo
        - Hal_getMonotonicTimeInMs
        - IsoConnection_sendMessage
        - MmsServerConnection_getFilesystemBasepath
        - MmsServerConnection_getNextRequestInvokeId
        - MmsServer_getObtainFileTask
        - MmsServer_releaseTransmitBuffer
        - MmsServer_reserveTransmitBuffer
        - Semaphore_post
        - StringUtils_copyStringMax
        - createServiceErrorObtainFileError
        - mmsClient_createFileOpenRequest
        - mmsMsg_createExtendedFilename
        - mmsMsg_createMmsRejectPdu
        - mmsMsg_createServiceErrorPdu
        - mmsMsg_isFilenameSave
        - mmsMsg_parseFileName
        - openFile
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_file_service.c:734,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:729,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:739,18'
          Dst:             mmsMsg_parseFileName
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:748,18'
          Dst:             mmsMsg_parseFileName
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:766,13'
          Dst:             mmsMsg_isFilenameSave
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:785,17'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:800,39'
          Dst:             MmsServerConnection_getFilesystemBasepath
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:800,9'
          Dst:             mmsMsg_createExtendedFilename
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:811,13'
          Dst:             FileSystem_getFileInfo
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:822,34'
          Dst:             MmsServer_getObtainFileTask
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:827,26'
          Dst:             MmsServerConnection_getFilesystemBasepath
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:827,17'
          Dst:             openFile
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:839,45'
          Dst:             MmsServerConnection_getNextRequestInvokeId
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:842,17'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:844,39'
          Dst:             MmsServer_reserveTransmitBuffer
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:846,17'
          Dst:             mmsClient_createFileOpenRequest
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:848,17'
          Dst:             IsoConnection_sendMessage
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:850,17'
          Dst:             MmsServer_releaseTransmitBuffer
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:852,37'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:858,13'
          Dst:             Semaphore_post
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:870,5'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:874,5'
          Dst:             createServiceErrorObtainFileError
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:878,5'
          Dst:             createServiceErrorObtainFileError
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:882,5'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:886,5'
          Dst:             mmsMsg_createMmsRejectPdu
    - functionName:    openFile
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - FileSystem_openFile
        - mmsMsg_createExtendedFilename
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:151,5'
          Dst:             mmsMsg_createExtendedFilename
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:158,12'
          Dst:             FileSystem_openFile
    - functionName:    createServiceErrorObtainFileError
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 453
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_encodeUInt32WithTL
        - mmsServer_createServiceErrorPduWithServiceSpecificInfo
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:450,16'
          Dst:             BerEncoder_encodeUInt32WithTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:452,5'
          Dst:             mmsServer_createServiceErrorPduWithServiceSpecificInfo
    - functionName:    mmsServerConnection_stopFileUploadTasks
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 686
      functionLinenumberEnd: 711
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          92
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:694,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:708,9'
          Dst:             Semaphore_post
    - functionName:    createObtainFileResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 457
      functionLinenumberEnd: 459
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - createNullResponseExtendedTag
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:458,5'
          Dst:             createNullResponseExtendedTag
    - functionName:    changeObtainFileStateToUnused
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 463
      functionLinenumberEnd: 478
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - FileSystem_closeFile
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:466,9'
          Dst:             FileSystem_closeFile
    - functionName:    mmsServer_fileUploadTask
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 482
      functionLinenumberEnd: 680
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         66
      ICount:          475
      EdgeCount:       83
      CyclomaticComplexity: 19
      functionsReached:
        - FileSystem_closeFile
        - Hal_getMonotonicTimeInMs
        - IsoConnection_lock
        - IsoConnection_sendMessage
        - IsoConnection_unlock
        - MmsServerConnection_getNextRequestInvokeId
        - MmsServer_getFilesystemBasepath
        - MmsServer_releaseTransmitBuffer
        - MmsServer_reserveTransmitBuffer
        - Semaphore_post
        - Semaphore_wait
        - changeObtainFileStateToUnused
        - createObtainFileResponse
        - createServiceErrorObtainFileError
        - deleteFile
        - mmsClient_createFileCloseRequest
        - mmsClient_createFileReadRequest
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_file_service.c:506,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:494,9'
          Dst:             IsoConnection_lock
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:496,19'
          Dst:             MmsServer_reserveTransmitBuffer
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:500,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:513,17'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:522,21'
          Dst:             FileSystem_closeFile
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:526,28'
          Dst:             MmsServer_getFilesystemBasepath
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:526,17'
          Dst:             deleteFile
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:532,41'
          Dst:             MmsServerConnection_getNextRequestInvokeId
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:534,13'
          Dst:             mmsClient_createFileReadRequest
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:537,13'
          Dst:             IsoConnection_sendMessage
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:539,33'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:546,17'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:555,21'
          Dst:             FileSystem_closeFile
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:559,28'
          Dst:             MmsServer_getFilesystemBasepath
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:559,17'
          Dst:             deleteFile
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:565,41'
          Dst:             MmsServerConnection_getNextRequestInvokeId
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:567,13'
          Dst:             mmsClient_createFileCloseRequest
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:571,13'
          Dst:             IsoConnection_sendMessage
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:573,33'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:579,17'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:586,17'
          Dst:             FileSystem_closeFile
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:588,28'
          Dst:             MmsServer_getFilesystemBasepath
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:588,17'
          Dst:             deleteFile
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:596,13'
          Dst:             createServiceErrorObtainFileError
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:599,13'
          Dst:             IsoConnection_sendMessage
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:603,17'
          Dst:             FileSystem_closeFile
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:607,24'
          Dst:             MmsServer_getFilesystemBasepath
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:607,13'
          Dst:             deleteFile
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:612,13'
          Dst:             changeObtainFileStateToUnused
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:618,13'
          Dst:             createServiceErrorObtainFileError
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:620,13'
          Dst:             IsoConnection_sendMessage
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:624,17'
          Dst:             FileSystem_closeFile
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:628,32'
          Dst:             MmsServer_getFilesystemBasepath
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:628,21'
          Dst:             deleteFile
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:634,13'
          Dst:             changeObtainFileStateToUnused
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:640,13'
          Dst:             createObtainFileResponse
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:642,13'
          Dst:             IsoConnection_sendMessage
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:648,13'
          Dst:             changeObtainFileStateToUnused
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:658,17'
          Dst:             FileSystem_closeFile
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:662,32'
          Dst:             MmsServer_getFilesystemBasepath
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:662,21'
          Dst:             deleteFile
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:665,13'
          Dst:             changeObtainFileStateToUnused
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:672,5'
          Dst:             Semaphore_post
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:677,9'
          Dst:             MmsServer_releaseTransmitBuffer
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:678,9'
          Dst:             IsoConnection_unlock
    - functionName:    deleteFile
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - FileSystem_deleteFile
        - mmsMsg_createExtendedFilename
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:202,5'
          Dst:             mmsMsg_createExtendedFilename
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:209,12'
          Dst:             FileSystem_deleteFile
    - functionName:    getNextFrsmId
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getFreeFrsm
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmsServer_handleFileOpenRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 343
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          236
      EdgeCount:       42
      CyclomaticComplexity: 10
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
        - MmsServerConnection_getFilesystemBasepath
        - getFreeFrsm
        - getNextFrsmId
        - mmsMsg_createFileOpenResponse
        - mmsMsg_createMmsRejectPdu
        - mmsMsg_createServiceErrorPdu
        - mmsMsg_isFilenameSave
        - mmsMsg_parseFileName
        - openFile
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_file_service.c:358,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:353,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:362,18'
          Dst:             mmsMsg_parseFileName
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:370,28'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:385,13'
          Dst:             mmsMsg_isFilenameSave
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:392,13'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:404,17'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:409,41'
          Dst:             getFreeFrsm
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:413,46'
          Dst:             MmsServerConnection_getFilesystemBasepath
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:413,37'
          Dst:             openFile
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:419,32'
          Dst:             getNextFrsmId
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:421,47'
          Dst:             MmsServerConnection_getFilesystemBasepath
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:421,17'
          Dst:             mmsMsg_createFileOpenResponse
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:425,17'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:428,13'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:436,5'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:440,5'
          Dst:             mmsMsg_createMmsRejectPdu
    - functionName:    mmsMsg_createFileOpenResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          145
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeInt32
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - Conversions_msTimeToGeneralizedTime
        - encodeFileAttributes
        - getFileInfo
        - mmsMsg_createServiceErrorPdu
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:218,5'
          Dst:             getFileInfo
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:225,9'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:232,5'
          Dst:             Conversions_msTimeToGeneralizedTime
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:234,35'
          Dst:             encodeFileAttributes
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:236,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:238,27'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:243,28'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:249,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:251,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:252,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:255,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:256,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:257,14'
          Dst:             BerEncoder_encodeInt32
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:258,14'
          Dst:             encodeFileAttributes
    - functionName:    mmsServer_handleFileDeleteRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_file_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          175
      EdgeCount:       33
      CyclomaticComplexity: 11
      functionsReached:
        - BerDecoder_decodeLength
        - MmsServerConnection_getFilesystemBasepath
        - createNullResponseExtendedTag
        - deleteFile
        - getFileInfo
        - mmsMsg_createMmsRejectPdu
        - mmsMsg_createServiceErrorPdu
        - mmsMsg_isFilenameSave
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:275,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:281,9'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:293,9'
          Dst:             mmsMsg_isFilenameSave
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:298,9'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:310,13'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:315,22'
          Dst:             MmsServerConnection_getFilesystemBasepath
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:315,10'
          Dst:             getFileInfo
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:320,9'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:324,21'
          Dst:             MmsServerConnection_getFilesystemBasepath
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:324,10'
          Dst:             deleteFile
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:329,9'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:333,5'
          Dst:             createNullResponseExtendedTag
        - Src:             'src/mms/iso_mms/server/mms_file_service.c:337,5'
          Dst:             mmsMsg_createMmsRejectPdu
    - functionName:    IsoConnection_isRunning
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 777
      functionLinenumberEnd: 782
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoConnection_getSecurityToken
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 771
      functionLinenumberEnd: 772
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoConnection_installListener
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 763
      functionLinenumberEnd: 767
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    finalizeIsoConnection
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          104
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Handleset_destroy
        - Memory_free
        - Semaphore_destroy
        - private_IsoServer_decreaseConnectionCounter
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_connection.c:127,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_server/iso_connection.c:128,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_server/iso_connection.c:129,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_server/iso_connection.c:131,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_server/iso_connection.c:132,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_server/iso_connection.c:137,13'
          Dst:             Handleset_destroy
        - Src:             'src/mms/iso_server/iso_connection.c:139,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_server/iso_connection.c:142,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_server/iso_connection.c:146,5'
          Dst:             Semaphore_destroy
        - Src:             'src/mms/iso_server/iso_connection.c:149,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_server/iso_connection.c:150,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_server/iso_connection.c:151,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_server/iso_connection.c:152,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_server/iso_connection.c:158,5'
          Dst:             private_IsoServer_decreaseConnectionCounter
    - functionName:    IsoConnection_close
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 736
      functionLinenumberEnd: 758
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - finalizeIsoConnection
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_connection.c:754,9'
          Dst:             finalizeIsoConnection
    - functionName:    IsoConnection_sendMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 684
      functionLinenumberEnd: 731
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          118
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - CotpConnection_sendDataMessage
        - IsoPresentation_createUserData
        - IsoSession_createDataSpdu
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_connection.c:707,5'
          Dst:             IsoPresentation_createUserData
        - Src:             'src/mms/iso_server/iso_connection.c:713,5'
          Dst:             IsoSession_createDataSpdu
        - Src:             'src/mms/iso_server/iso_connection.c:717,18'
          Dst:             CotpConnection_sendDataMessage
    - functionName:    IsoConnection_getLocalAddress
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 662
      functionLinenumberEnd: 663
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoConnection_getPeerAddress
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 656
      functionLinenumberEnd: 657
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoConnection_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 629
      functionLinenumberEnd: 652
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - Handleset_destroy
        - Memory_free
        - Socket_destroy
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_connection.c:636,9'
          Dst:             Socket_destroy
        - Src:             'src/mms/iso_server/iso_connection.c:646,13'
          Dst:             Handleset_destroy
        - Src:             'src/mms/iso_server/iso_connection.c:648,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_server/iso_connection.c:651,5'
          Dst:             Memory_free
    - functionName:    IsoConnection_start
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 619
      functionLinenumberEnd: 625
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoConnection_getState
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 614
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoConnection_create
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 511
      functionLinenumberEnd: 608
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          163
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - AcseConnection_init
        - ByteBuffer_wrap
        - CotpConnection_init
        - IsoPresentation_init
        - IsoServer_getAuthenticator
        - IsoServer_getAuthenticatorParameter
        - IsoSession_init
        - Memory_calloc
        - Semaphore_create
        - Socket_getLocalAddress
        - Socket_getPeerAddress
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_connection.c:512,41'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_server/iso_connection.c:542,41'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_server/iso_connection.c:543,38'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_server/iso_connection.c:549,31'
          Dst:             Socket_getPeerAddress
        - Src:             'src/mms/iso_server/iso_connection.c:550,30'
          Dst:             Socket_getLocalAddress
        - Src:             'src/mms/iso_server/iso_connection.c:553,26'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_server/iso_connection.c:556,9'
          Dst:             ByteBuffer_wrap
        - Src:             'src/mms/iso_server/iso_connection.c:558,39'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_server/iso_connection.c:559,40'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_server/iso_connection.c:561,9'
          Dst:             ByteBuffer_wrap
        - Src:             'src/mms/iso_server/iso_connection.c:563,9'
          Dst:             ByteBuffer_wrap
        - Src:             'src/mms/iso_server/iso_connection.c:566,49'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_server/iso_connection.c:568,52'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_server/iso_connection.c:569,9'
          Dst:             CotpConnection_init
        - Src:             'src/mms/iso_server/iso_connection.c:577,38'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_server/iso_connection.c:578,9'
          Dst:             IsoSession_init
        - Src:             'src/mms/iso_server/iso_connection.c:580,48'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_server/iso_connection.c:581,9'
          Dst:             IsoPresentation_init
        - Src:             'src/mms/iso_server/iso_connection.c:583,49'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_server/iso_connection.c:589,51'
          Dst:             IsoServer_getAuthenticator
        - Src:             'src/mms/iso_server/iso_connection.c:590,29'
          Dst:             IsoServer_getAuthenticatorParameter
        - Src:             'src/mms/iso_server/iso_connection.c:589,9'
          Dst:             AcseConnection_init
    - functionName:    IsoConnection_unlock
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 676
      functionLinenumberEnd: 680
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_connection.c:678,5'
          Dst:             Semaphore_post
    - functionName:    IsoConnection_lock
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 668
      functionLinenumberEnd: 672
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_wait
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_connection.c:670,5'
          Dst:             Semaphore_wait
    - functionName:    IsoConnection_handleTcpConnection
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 486
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         48
      ICount:          594
      EdgeCount:       57
      CyclomaticComplexity: 11
      functionsReached:
        - AcseConnection_createAssociateResponseMessage
        - AcseConnection_createReleaseResponseMessage
        - AcseConnection_parseMessage
        - BufferChain_init
        - ByteBuffer_wrap
        - CotpConnection_getPayload
        - CotpConnection_parseIncomingMessage
        - CotpConnection_readToTpktBuffer
        - CotpConnection_resetPayload
        - CotpConnection_sendConnectionResponseMessage
        - CotpConnection_sendDataMessage
        - IsoConnection_lock
        - IsoConnection_unlock
        - IsoPresentation_createCpaMessage
        - IsoPresentation_createUserData
        - IsoPresentation_createUserDataACSE
        - IsoPresentation_parseConnect
        - IsoPresentation_parseUserData
        - IsoSession_createAcceptSpdu
        - IsoSession_createDataSpdu
        - IsoSession_createDisconnectSpdu
        - IsoSession_getUserData
        - IsoSession_parseMessage
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_server/iso_connection.c:207,5'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_server/iso_connection.c:237,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_server/iso_connection.c:197,27'
          Dst:             CotpConnection_readToTpktBuffer
        - Src:             'src/mms/iso_server/iso_connection.c:205,37'
          Dst:             CotpConnection_parseIncomingMessage
        - Src:             'src/mms/iso_server/iso_connection.c:217,9'
          Dst:             IsoConnection_lock
        - Src:             'src/mms/iso_server/iso_connection.c:220,9'
          Dst:             CotpConnection_sendConnectionResponseMessage
        - Src:             'src/mms/iso_server/iso_connection.c:223,9'
          Dst:             IsoConnection_unlock
        - Src:             'src/mms/iso_server/iso_connection.c:228,35'
          Dst:             CotpConnection_getPayload
        - Src:             'src/mms/iso_server/iso_connection.c:233,44'
          Dst:             IsoSession_parseMessage
        - Src:             'src/mms/iso_server/iso_connection.c:235,39'
          Dst:             IsoSession_getUserData
        - Src:             'src/mms/iso_server/iso_connection.c:243,17'
          Dst:             IsoPresentation_parseConnect
        - Src:             'src/mms/iso_server/iso_connection.c:250,46'
          Dst:             AcseConnection_parseMessage
        - Src:             'src/mms/iso_server/iso_connection.c:255,21'
          Dst:             IsoConnection_lock
        - Src:             'src/mms/iso_server/iso_connection.c:263,21'
          Dst:             ByteBuffer_wrap
        - Src:             'src/mms/iso_server/iso_connection.c:267,21'
          Dst:             ByteBuffer_wrap
        - Src:             'src/mms/iso_server/iso_connection.c:277,21'
          Dst:             BufferChain_init
        - Src:             'src/mms/iso_server/iso_connection.c:292,25'
          Dst:             AcseConnection_createAssociateResponseMessage
        - Src:             'src/mms/iso_server/iso_connection.c:301,25'
          Dst:             IsoPresentation_createCpaMessage
        - Src:             'src/mms/iso_server/iso_connection.c:308,25'
          Dst:             IsoSession_createAcceptSpdu
        - Src:             'src/mms/iso_server/iso_connection.c:310,25'
          Dst:             CotpConnection_sendDataMessage
        - Src:             'src/mms/iso_server/iso_connection.c:319,21'
          Dst:             IsoConnection_unlock
        - Src:             'src/mms/iso_server/iso_connection.c:339,18'
          Dst:             IsoPresentation_parseUserData
        - Src:             'src/mms/iso_server/iso_connection.c:357,17'
          Dst:             IsoConnection_lock
        - Src:             'src/mms/iso_server/iso_connection.c:360,17'
          Dst:             ByteBuffer_wrap
        - Src:             'src/mms/iso_server/iso_connection.c:373,21'
          Dst:             BufferChain_init
        - Src:             'src/mms/iso_server/iso_connection.c:381,21'
          Dst:             IsoPresentation_createUserData
        - Src:             'src/mms/iso_server/iso_connection.c:388,21'
          Dst:             IsoSession_createDataSpdu
        - Src:             'src/mms/iso_server/iso_connection.c:390,21'
          Dst:             CotpConnection_sendDataMessage
        - Src:             'src/mms/iso_server/iso_connection.c:394,17'
          Dst:             IsoConnection_unlock
        - Src:             'src/mms/iso_server/iso_connection.c:409,17'
          Dst:             IsoPresentation_parseUserData
        - Src:             'src/mms/iso_server/iso_connection.c:415,17'
          Dst:             IsoConnection_lock
        - Src:             'src/mms/iso_server/iso_connection.c:423,17'
          Dst:             AcseConnection_createReleaseResponseMessage
        - Src:             'src/mms/iso_server/iso_connection.c:430,17'
          Dst:             IsoPresentation_createUserDataACSE
        - Src:             'src/mms/iso_server/iso_connection.c:437,17'
          Dst:             IsoSession_createDisconnectSpdu
        - Src:             'src/mms/iso_server/iso_connection.c:439,17'
          Dst:             CotpConnection_sendDataMessage
        - Src:             'src/mms/iso_server/iso_connection.c:442,17'
          Dst:             IsoConnection_unlock
        - Src:             'src/mms/iso_server/iso_connection.c:470,9'
          Dst:             CotpConnection_resetPayload
    - functionName:    IsoConnection_callTickHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - CotpConnection_flushBuffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_connection.c:176,5'
          Dst:             CotpConnection_flushBuffer
    - functionName:    IsoConnection_removeFromHandleSet
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Handleset_removeSocket
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_connection.c:170,5'
          Dst:             Handleset_removeSocket
    - functionName:    IsoConnection_addToHandleSet
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Handleset_addSocket
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_connection.c:164,5'
          Dst:             Handleset_addSocket
    - functionName:    authenticateClient
      functionSourceFile: '/src/libiec61850/src/mms/iso_acse/acse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    checkAuthMechanismName
      functionSourceFile: '/src/libiec61850/src/mms/iso_acse/acse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          49
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_acse/acse.c:50,17'
          Dst:             memcmp
    - functionName:    checkAuthentication
      functionSourceFile: '/src/libiec61850/src/mms/iso_acse/acse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - authenticateClient
        - checkAuthMechanismName
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_acse/acse.c:89,49'
          Dst:             checkAuthMechanismName
        - Src:             'src/mms/iso_acse/acse.c:111,16'
          Dst:             authenticateClient
    - functionName:    parseUserInformation
      functionSourceFile: '/src/libiec61850/src/mms/iso_acse/acse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          155
      EdgeCount:       29
      CyclomaticComplexity: 7
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/mms/iso_acse/acse.c:142,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_acse/acse.c:131,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_acse/acse.c:146,35'
          Dst:             BerDecoder_decodeUint32
    - functionName:    AcseConnection_createReleaseResponseMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_acse/acse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 875
      functionLinenumberEnd: 886
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          29
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    AcseConnection_createReleaseRequestMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_acse/acse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 857
      functionLinenumberEnd: 871
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    AcseConnection_createAbortMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_acse/acse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 835
      functionLinenumberEnd: 853
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          55
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    AcseConnection_createAssociateRequestMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_acse/acse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 828
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          495
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_acse/acse.c:656,35'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_acse/acse.c:670,36'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_acse/acse.c:692,37'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_acse/acse.c:697,35'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_acse/acse.c:714,23'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_acse/acse.c:722,23'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_acse/acse.c:727,23'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_acse/acse.c:735,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:738,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:739,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:746,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:748,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:756,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:758,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:760,18'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_acse/acse.c:767,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:769,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:776,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:778,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:780,18'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_acse/acse.c:787,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:794,22'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:799,22'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:801,22'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:813,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:816,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:819,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:823,14'
          Dst:             BerEncoder_encodeTL
    - functionName:    AcseConnection_createAssociateResponseMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_acse/acse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 542
      functionLinenumberEnd: 624
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          200
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_acse/acse.c:565,30'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_acse/acse.c:568,21'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_acse/acse.c:574,30'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_acse/acse.c:579,30'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_acse/acse.c:589,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:592,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:593,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:598,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:599,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:603,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:604,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:605,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:609,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:612,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:615,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_acse/acse.c:616,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_acse/acse.c:619,14'
          Dst:             BerEncoder_encodeTL
    - functionName:    AcseConnection_createAssociateFailedMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_acse/acse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 532
      functionLinenumberEnd: 534
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - AcseConnection_createAssociateResponseMessage
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_acse/acse.c:533,5'
          Dst:             AcseConnection_createAssociateResponseMessage
    - functionName:    parseAarePdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_acse/acse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          216
      EdgeCount:       42
      CyclomaticComplexity: 11
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
        - parseUserInformation
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_acse/acse.c:217,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_acse/acse.c:198,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_acse/acse.c:226,22'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_acse/acse.c:230,22'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_acse/acse.c:250,26'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_acse/acse.c:254,26'
          Dst:             parseUserInformation
    - functionName:    parseAarqPdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_acse/acse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 446
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          397
      EdgeCount:       75
      CyclomaticComplexity: 19
      functionsReached:
        - BerDecoder_decodeInt32
        - BerDecoder_decodeLength
        - BerDecoder_decodeOID
        - checkAuthentication
        - parseUserInformation
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_acse/acse.c:317,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_acse/acse.c:298,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_acse/acse.c:339,25'
          Dst:             BerDecoder_decodeOID
        - Src:             'src/mms/iso_acse/acse.c:354,66'
          Dst:             BerDecoder_decodeInt32
        - Src:             'src/mms/iso_acse/acse.c:373,22'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_acse/acse.c:397,26'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_acse/acse.c:406,26'
          Dst:             parseUserInformation
        - Src:             'src/mms/iso_acse/acse.c:429,9'
          Dst:             checkAuthentication
    - functionName:    AcseConnection_parseMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_acse/acse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 470
      functionLinenumberEnd: 528
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          130
      EdgeCount:       21
      CyclomaticComplexity: 4
      functionsReached:
        - BerDecoder_decodeLength
        - parseAarePdu
        - parseAarqPdu
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/mms/iso_acse/acse.c:501,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_acse/acse.c:491,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_acse/acse.c:504,22'
          Dst:             parseAarqPdu
        - Src:             'src/mms/iso_acse/acse.c:507,22'
          Dst:             parseAarePdu
    - functionName:    AcseConnection_init
      functionSourceFile: '/src/libiec61850/src/mms/iso_acse/acse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 450
      functionLinenumberEnd: 466
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          36
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BufferChain_init
      functionSourceFile: '/src/libiec61850/src/common/buffer_chain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          34
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    removeTerminatedConnections
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 297
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          111
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - IsoConnection_close
        - IsoConnection_destroy
        - IsoConnection_getState
        - IsoConnection_removeFromHandleSet
        - removeClientConnection
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:275,21'
          Dst:             IsoConnection_getState
        - Src:             'src/mms/iso_server/iso_server.c:279,21'
          Dst:             IsoConnection_close
        - Src:             'src/mms/iso_server/iso_server.c:281,21'
          Dst:             IsoConnection_removeFromHandleSet
        - Src:             'src/mms/iso_server/iso_server.c:285,17'
          Dst:             IsoConnection_getState
        - Src:             'src/mms/iso_server/iso_server.c:287,17'
          Dst:             removeClientConnection
        - Src:             'src/mms/iso_server/iso_server.c:288,17'
          Dst:             IsoConnection_destroy
    - functionName:    removeClientConnection
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          63
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - IsoConnection_removeFromHandleSet
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:214,13'
          Dst:             IsoConnection_removeFromHandleSet
    - functionName:    addClientConnection
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    handleClientConnections
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 466
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          82
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - IsoConnection_destroy
        - IsoConnection_handleTcpConnection
        - IsoConnection_isRunning
        - removeTerminatedConnections
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:445,17'
          Dst:             IsoConnection_isRunning
        - Src:             'src/mms/iso_server/iso_server.c:448,17'
          Dst:             IsoConnection_handleTcpConnection
        - Src:             'src/mms/iso_server/iso_server.c:452,17'
          Dst:             IsoConnection_destroy
        - Src:             'src/mms/iso_server/iso_server.c:463,5'
          Dst:             removeTerminatedConnections
    - functionName:    callTickHandlerForClientConnections
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - IsoConnection_callTickHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:396,13'
          Dst:             IsoConnection_callTickHandler
    - functionName:    private_IsoServer_decreaseConnectionCounter
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1009
      functionLinenumberEnd: 1022
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoServer_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 955
      functionLinenumberEnd: 1005
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          64
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - Handleset_destroy
        - IsoServer_stopListening
        - Memory_free
        - Semaphore_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:960,13'
          Dst:             IsoServer_stopListening
        - Src:             'src/mms/iso_server/iso_server.c:985,13'
          Dst:             Handleset_destroy
        - Src:             'src/mms/iso_server/iso_server.c:988,9'
          Dst:             Semaphore_destroy
        - Src:             'src/mms/iso_server/iso_server.c:991,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_server/iso_server.c:1003,9'
          Dst:             Memory_free
    - functionName:    IsoServer_stopListening
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 908
      functionLinenumberEnd: 934
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          84
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - Handleset_destroy
        - ServerSocket_destroy
        - Thread_destroy
        - Thread_sleep
        - closeAllOpenClientConnections
        - private_IsoServer_getConnectionCounter
        - setState
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:909,5'
          Dst:             setState
        - Src:             'src/mms/iso_server/iso_server.c:912,9'
          Dst:             Thread_destroy
        - Src:             'src/mms/iso_server/iso_server.c:916,9'
          Dst:             ServerSocket_destroy
        - Src:             'src/mms/iso_server/iso_server.c:920,5'
          Dst:             closeAllOpenClientConnections
        - Src:             'src/mms/iso_server/iso_server.c:923,12'
          Dst:             private_IsoServer_getConnectionCounter
        - Src:             'src/mms/iso_server/iso_server.c:924,9'
          Dst:             Thread_sleep
        - Src:             'src/mms/iso_server/iso_server.c:928,9'
          Dst:             Handleset_destroy
    - functionName:    setState
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:105,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_server/iso_server.c:109,5'
          Dst:             Semaphore_post
    - functionName:    closeAllOpenClientConnections
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 366
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          67
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - IsoConnection_close
        - IsoConnection_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:356,13'
          Dst:             IsoConnection_close
        - Src:             'src/mms/iso_server/iso_server.c:357,13'
          Dst:             IsoConnection_destroy
    - functionName:    private_IsoServer_getConnectionCounter
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1026
      functionLinenumberEnd: 1039
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoServer_setConnectionHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 948
      functionLinenumberEnd: 951
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoServer_closeConnectionIndication
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 939
      functionLinenumberEnd: 944
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - getState
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:940,9'
          Dst:             getState
    - functionName:    getState
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:119,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_server/iso_server.c:123,5'
          Dst:             Semaphore_post
    - functionName:    stopListening
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 878
      functionLinenumberEnd: 886
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ServerSocket_destroy
        - setState
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:879,5'
          Dst:             setState
        - Src:             'src/mms/iso_server/iso_server.c:883,9'
          Dst:             ServerSocket_destroy
    - functionName:    IsoServer_stopListeningThreadless
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 890
      functionLinenumberEnd: 903
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Handleset_destroy
        - closeAllOpenClientConnections
        - stopListening
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:891,5'
          Dst:             stopListening
        - Src:             'src/mms/iso_server/iso_server.c:893,5'
          Dst:             closeAllOpenClientConnections
        - Src:             'src/mms/iso_server/iso_server.c:897,9'
          Dst:             Handleset_destroy
    - functionName:    IsoServer_getConnectionCounter
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 872
      functionLinenumberEnd: 873
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - private_IsoServer_getConnectionCounter
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:873,12'
          Dst:             private_IsoServer_getConnectionCounter
    - functionName:    handleIsoConnections
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 514
      functionLinenumberEnd: 584
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          177
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - Handleset_waitReady
        - IsoConnection_addToHandleSet
        - IsoConnection_create
        - IsoConnection_start
        - ServerSocket_accept
        - Socket_destroy
        - addClientConnection
        - callTickHandlerForClientConnections
        - handleClientConnections
        - private_IsoServer_getConnectionCounter
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:521,9'
          Dst:             callTickHandlerForClientConnections
        - Src:             'src/mms/iso_server/iso_server.c:524,9'
          Dst:             Handleset_waitReady
        - Src:             'src/mms/iso_server/iso_server.c:529,29'
          Dst:             ServerSocket_accept
        - Src:             'src/mms/iso_server/iso_server.c:535,17'
          Dst:             private_IsoServer_getConnectionCounter
        - Src:             'src/mms/iso_server/iso_server.c:540,17'
          Dst:             Socket_destroy
        - Src:             'src/mms/iso_server/iso_server.c:548,13'
          Dst:             private_IsoServer_getConnectionCounter
        - Src:             'src/mms/iso_server/iso_server.c:553,13'
          Dst:             Socket_destroy
        - Src:             'src/mms/iso_server/iso_server.c:556,17'
          Dst:             handleClientConnections
        - Src:             'src/mms/iso_server/iso_server.c:562,39'
          Dst:             IsoConnection_create
        - Src:             'src/mms/iso_server/iso_server.c:566,13'
          Dst:             addClientConnection
        - Src:             'src/mms/iso_server/iso_server.c:569,17'
          Dst:             IsoConnection_addToHandleSet
        - Src:             'src/mms/iso_server/iso_server.c:574,17'
          Dst:             IsoConnection_start
        - Src:             'src/mms/iso_server/iso_server.c:578,13'
          Dst:             Socket_destroy
        - Src:             'src/mms/iso_server/iso_server.c:583,9'
          Dst:             handleClientConnections
    - functionName:    IsoServer_processIncomingMessages
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 865
      functionLinenumberEnd: 868
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - getState
        - handleIsoConnections
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:866,9'
          Dst:             getState
        - Src:             'src/mms/iso_server/iso_server.c:867,9'
          Dst:             handleIsoConnections
    - functionName:    IsoServer_waitReady
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 843
      functionLinenumberEnd: 860
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Handleset_waitReady
        - getState
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:846,9'
          Dst:             getState
        - Src:             'src/mms/iso_server/iso_server.c:851,22'
          Dst:             Handleset_waitReady
    - functionName:    setupIsoServer
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 470
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          78
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Handleset_addSocket
        - Handleset_new
        - ServerSocket_listen
        - ServerSocket_setBacklog
        - Socket_activateTcpKeepAlive
        - TcpServerSocket_create
        - setState
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:473,34'
          Dst:             TcpServerSocket_create
        - Src:             'src/mms/iso_server/iso_server.c:477,9'
          Dst:             setState
        - Src:             'src/mms/iso_server/iso_server.c:484,27'
          Dst:             Handleset_new
        - Src:             'src/mms/iso_server/iso_server.c:486,5'
          Dst:             Handleset_addSocket
        - Src:             'src/mms/iso_server/iso_server.c:489,5'
          Dst:             Socket_activateTcpKeepAlive
        - Src:             'src/mms/iso_server/iso_server.c:498,5'
          Dst:             ServerSocket_setBacklog
        - Src:             'src/mms/iso_server/iso_server.c:500,5'
          Dst:             ServerSocket_listen
        - Src:             'src/mms/iso_server/iso_server.c:502,5'
          Dst:             setState
    - functionName:    IsoServer_startListeningThreadless
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 824
      functionLinenumberEnd: 839
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - setState
        - setupIsoServer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:825,10'
          Dst:             setupIsoServer
        - Src:             'src/mms/iso_server/iso_server.c:834,9'
          Dst:             setState
    - functionName:    IsoServer_setTLSConfiguration
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 757
      functionLinenumberEnd: 785
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoServer_getTLSConfiguration
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 729
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoServer_getAuthenticatorParameter
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 723
      functionLinenumberEnd: 724
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoServer_getAuthenticator
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 717
      functionLinenumberEnd: 718
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoServer_setAuthenticator
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 710
      functionLinenumberEnd: 713
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoServer_getState
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 704
      functionLinenumberEnd: 705
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - getState
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:705,12'
          Dst:             getState
    - functionName:    IsoServer_setLocalIpAddress
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 693
      functionLinenumberEnd: 700
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
        - StringUtils_copyString
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:694,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_server/iso_server.c:697,32'
          Dst:             StringUtils_copyString
    - functionName:    IsoServer_setTcpPort
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 687
      functionLinenumberEnd: 689
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoServer_setMaxConnections
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 680
      functionLinenumberEnd: 682
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoServer_create
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 626
      functionLinenumberEnd: 674
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_calloc
        - Semaphore_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:627,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_server/iso_server.c:655,27'
          Dst:             Semaphore_create
    - functionName:    IsoServer_closeConnection
      functionSourceFile: '/src/libiec61850/src/mms/iso_server/iso_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - IsoConnection_close
        - IsoConnection_destroy
        - printf
        - removeClientConnection
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_server/iso_server.c:309,9'
          Dst:             removeClientConnection
        - Src:             'src/mms/iso_server/iso_server.c:312,9'
          Dst:             printf
        - Src:             'src/mms/iso_server/iso_server.c:313,9'
          Dst:             IsoConnection_close
        - Src:             'src/mms/iso_server/iso_server.c:314,9'
          Dst:             IsoConnection_destroy
    - functionName:    getNumberOfElements
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_access_result.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          131
      EdgeCount:       26
      CyclomaticComplexity: 3
      functionsReached:
        - BerDecoder_decodeLength
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_access_result.c:113,10'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:108,19'
          Dst:             BerDecoder_decodeLength
    - functionName:    encodeArrayAccessResult
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_access_result.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          122
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeLength
        - MmsValue_encodeMmsData
        - MmsValue_getArraySize
        - MmsValue_getElement
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:38,21'
          Dst:             MmsValue_getArraySize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:41,29'
          Dst:             MmsValue_getElement
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:43,25'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:48,18'
          Dst:             BerEncoder_encodeLength
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:51,33'
          Dst:             MmsValue_getElement
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:53,22'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:59,35'
          Dst:             BerEncoder_determineLengthSize
    - functionName:    MmsValue_encodeMmsData
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_access_result.c'
      linkageType:     InternalLinkage
      functionLinenumber: 522
      functionLinenumberEnd: 639
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          423
      EdgeCount:       73
      CyclomaticComplexity: 15
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineEncodedBitStringSize
        - BerEncoder_determineEncodedStringSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeAsn1PrimitiveValue
        - BerEncoder_encodeBitString
        - BerEncoder_encodeBoolean
        - BerEncoder_encodeFloat
        - BerEncoder_encodeOctetString
        - BerEncoder_encodeStringWithTag
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - encodeArrayAccessResult
        - encodeStructuredAccessResult
      functionUses:    50
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_access_result.c:525,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:528,22'
          Dst:             BerEncoder_encodeBoolean
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:535,22'
          Dst:             encodeStructuredAccessResult
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:537,20'
          Dst:             encodeStructuredAccessResult
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:543,22'
          Dst:             encodeArrayAccessResult
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:545,20'
          Dst:             encodeArrayAccessResult
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:550,26'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:552,22'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:553,22'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:556,24'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:561,22'
          Dst:             BerEncoder_encodeStringWithTag
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:563,20'
          Dst:             BerEncoder_determineEncodedStringSize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:567,22'
          Dst:             BerEncoder_encodeAsn1PrimitiveValue
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:573,22'
          Dst:             BerEncoder_encodeAsn1PrimitiveValue
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:579,22'
          Dst:             BerEncoder_encodeOctetString
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:585,22'
          Dst:             BerEncoder_encodeBitString
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:588,20'
          Dst:             BerEncoder_determineEncodedBitStringSize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:593,22'
          Dst:             BerEncoder_encodeOctetString
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:600,22'
          Dst:             BerEncoder_encodeOctetString
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:603,24'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:612,26'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:613,26'
          Dst:             BerEncoder_encodeFloat
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:624,22'
          Dst:             BerEncoder_encodeStringWithTag
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:626,20'
          Dst:             BerEncoder_determineEncodedStringSize
    - functionName:    encodeStructuredAccessResult
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_access_result.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          116
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeLength
        - MmsValue_encodeMmsData
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:77,27'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:81,18'
          Dst:             BerEncoder_encodeLength
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:84,22'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:89,37'
          Dst:             BerEncoder_determineLengthSize
    - functionName:    getMaxStructSize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_access_result.c'
      linkageType:     InternalLinkage
      functionLinenumber: 440
      functionLinenumberEnd: 454
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          63
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - BerEncoder_determineLengthSize
        - MmsVariableSpecification_getMaxEncodedSize
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:450,27'
          Dst:             MmsVariableSpecification_getMaxEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:452,33'
          Dst:             BerEncoder_determineLengthSize
    - functionName:    MmsVariableSpecification_getMaxEncodedSize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_access_result.c'
      linkageType:     InternalLinkage
      functionLinenumber: 459
      functionLinenumberEnd: 517
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          174
      EdgeCount:       35
      CyclomaticComplexity: 19
      functionsReached:
        - BerEncoder_determineEncodedBitStringSize
        - BerEncoder_determineLengthSize
        - MmsVariableSpecification_getMaxEncodedSize
        - getMaxStructSize
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_access_result.c:463,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:466,16'
          Dst:             getMaxStructSize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:469,23'
          Dst:             MmsVariableSpecification_getMaxEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:471,34'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:481,34'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:494,16'
          Dst:             BerEncoder_determineEncodedBitStringSize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:501,20'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:509,34'
          Dst:             BerEncoder_determineLengthSize
    - functionName:    MmsValue_getMaxStructSize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_access_result.c'
      linkageType:     InternalLinkage
      functionLinenumber: 360
      functionLinenumberEnd: 374
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          63
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - BerEncoder_determineLengthSize
        - MmsValue_getMaxEncodedSize
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:370,27'
          Dst:             MmsValue_getMaxEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:372,33'
          Dst:             BerEncoder_determineLengthSize
    - functionName:    MmsValue_getMaxEncodedSize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_access_result.c'
      linkageType:     InternalLinkage
      functionLinenumber: 379
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          170
      EdgeCount:       35
      CyclomaticComplexity: 19
      functionsReached:
        - BerEncoder_determineEncodedBitStringSize
        - BerEncoder_determineLengthSize
        - MmsValue_getMaxStructSize
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_access_result.c:383,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:386,16'
          Dst:             MmsValue_getMaxStructSize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:389,16'
          Dst:             MmsValue_getMaxStructSize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:399,34'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:412,16'
          Dst:             BerEncoder_determineEncodedBitStringSize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:419,20'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:427,34'
          Dst:             BerEncoder_determineLengthSize
    - functionName:    MmsValue_decodeMmsData
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_access_result.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 355
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_decodeMmsDataMaxRecursion
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:355,12'
          Dst:             MmsValue_decodeMmsDataMaxRecursion
    - functionName:    MmsValue_decodeMmsDataMaxRecursion
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_access_result.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 349
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_decodeMmsDataRecursive
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:349,12'
          Dst:             MmsValue_decodeMmsDataRecursive
    - functionName:    MmsValue_decodeMmsDataRecursive
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_access_result.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         88
      ICount:          616
      EdgeCount:       113
      CyclomaticComplexity: 27
      functionsReached:
        - BerDecoder_decodeBoolean
        - BerDecoder_decodeDouble
        - BerDecoder_decodeFloat
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
        - MmsValue_createEmptyArray
        - MmsValue_createEmptyStructure
        - MmsValue_decodeMmsDataRecursive
        - MmsValue_delete
        - MmsValue_newBinaryTime
        - MmsValue_newBitString
        - MmsValue_newBoolean
        - MmsValue_newDataAccessError
        - MmsValue_newDouble
        - MmsValue_newFloat
        - MmsValue_newInteger
        - MmsValue_newOctetString
        - MmsValue_newUnsigned
        - MmsValue_newUtcTime
        - MmsValue_newVisibleStringFromByteArray
        - MmsValue_setElement
        - MmsValue_setUtcTimeByBuffer
        - getNumberOfElements
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_access_result.c:186,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:174,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:191,28'
          Dst:             getNumberOfElements
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:197,21'
          Dst:             MmsValue_createEmptyArray
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:199,21'
          Dst:             MmsValue_createEmptyStructure
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:207,29'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:214,38'
          Dst:             MmsValue_decodeMmsDataRecursive
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:219,13'
          Dst:             MmsValue_setElement
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:231,66'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:231,17'
          Dst:             MmsValue_newDataAccessError
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:236,37'
          Dst:             BerDecoder_decodeBoolean
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:236,17'
          Dst:             MmsValue_newBoolean
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:248,17'
          Dst:             MmsValue_newBitString
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:258,17'
          Dst:             MmsValue_newInteger
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:268,17'
          Dst:             MmsValue_newUnsigned
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:277,40'
          Dst:             BerDecoder_decodeDouble
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:277,21'
          Dst:             MmsValue_newDouble
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:279,39'
          Dst:             BerDecoder_decodeFloat
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:279,21'
          Dst:             MmsValue_newFloat
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:284,17'
          Dst:             MmsValue_newOctetString
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:290,17'
          Dst:             MmsValue_newVisibleStringFromByteArray
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:296,21'
          Dst:             MmsValue_newBinaryTime
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:298,21'
          Dst:             MmsValue_newBinaryTime
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:308,17'
          Dst:             MmsValue_newVisibleStringFromByteArray
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:317,21'
          Dst:             MmsValue_newUtcTime
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:318,13'
          Dst:             MmsValue_setUtcTimeByBuffer
        - Src:             'src/mms/iso_mms/server/mms_access_result.c:341,9'
          Dst:             MmsValue_delete
    - functionName:    MmsServer_abortConnection
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 959
      functionLinenumberEnd: 978
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          64
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - IsoServer_closeConnection
        - LinkedList_getData
        - LinkedList_getNext
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:962,27'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_server.c:966,46'
          Dst:             LinkedList_getData
        - Src:             'src/mms/iso_mms/server/mms_server.c:968,17'
          Dst:             IsoServer_closeConnection
        - Src:             'src/mms/iso_mms/server/mms_server.c:973,20'
          Dst:             LinkedList_getNext
    - functionName:    MmsServer_ignoreClientRequests
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 953
      functionLinenumberEnd: 955
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_setRequestTimeout
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 945
      functionLinenumberEnd: 949
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_getFilesystemBasepath
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 932
      functionLinenumberEnd: 941
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_stopListeningThreadless
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 914
      functionLinenumberEnd: 928
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - IsoServer_stopListeningThreadless
        - LinkedList_getData
        - LinkedList_getNext
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:917,27'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_server.c:921,46'
          Dst:             LinkedList_getData
        - Src:             'src/mms/iso_mms/server/mms_server.c:923,13'
          Dst:             IsoServer_stopListeningThreadless
        - Src:             'src/mms/iso_mms/server/mms_server.c:925,20'
          Dst:             LinkedList_getNext
    - functionName:    MmsServer_callConnectionHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 905
      functionLinenumberEnd: 910
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_getConnectionCounter
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 883
      functionLinenumberEnd: 900
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - IsoServer_getConnectionCounter
        - LinkedList_getData
        - LinkedList_getNext
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:888,27'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_server.c:892,46'
          Dst:             LinkedList_getData
        - Src:             'src/mms/iso_mms/server/mms_server.c:894,22'
          Dst:             IsoServer_getConnectionCounter
        - Src:             'src/mms/iso_mms/server/mms_server.c:896,20'
          Dst:             LinkedList_getNext
    - functionName:    MmsServer_handleBackgroundTasks
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 855
      functionLinenumberEnd: 879
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          76
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
        - mmsServer_fileUploadTask
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:863,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/server/mms_server.c:869,9'
          Dst:             Semaphore_post
        - Src:             'src/mms/iso_mms/server/mms_server.c:874,13'
          Dst:             mmsServer_fileUploadTask
    - functionName:    MmsServer_handleIncomingMessages
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 837
      functionLinenumberEnd: 851
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - IsoServer_processIncomingMessages
        - LinkedList_getData
        - LinkedList_getNext
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:840,27'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_server.c:844,46'
          Dst:             LinkedList_getData
        - Src:             'src/mms/iso_mms/server/mms_server.c:846,13'
          Dst:             IsoServer_processIncomingMessages
        - Src:             'src/mms/iso_mms/server/mms_server.c:848,20'
          Dst:             LinkedList_getNext
    - functionName:    MmsServer_waitReady
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 800
      functionLinenumberEnd: 832
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          87
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoServer_waitReady
        - LinkedList_getData
        - LinkedList_getNext
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:807,27'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_server.c:811,46'
          Dst:             LinkedList_getData
        - Src:             'src/mms/iso_mms/server/mms_server.c:817,32'
          Dst:             IsoServer_waitReady
        - Src:             'src/mms/iso_mms/server/mms_server.c:822,32'
          Dst:             IsoServer_waitReady
        - Src:             'src/mms/iso_mms/server/mms_server.c:828,20'
          Dst:             LinkedList_getNext
    - functionName:    isoConnectionIndicationHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 682
      functionLinenumberEnd: 720
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          128
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - Map_addEntry
        - Map_removeEntry
        - MmsServerConnection_destroy
        - MmsServerConnection_init
        - Semaphore_post
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:687,38'
          Dst:             MmsServerConnection_init
        - Src:             'src/mms/iso_mms/server/mms_server.c:690,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/server/mms_server.c:693,9'
          Dst:             Map_addEntry
        - Src:             'src/mms/iso_mms/server/mms_server.c:696,9'
          Dst:             Semaphore_post
        - Src:             'src/mms/iso_mms/server/mms_server.c:705,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/server/mms_server.c:708,59'
          Dst:             Map_removeEntry
        - Src:             'src/mms/iso_mms/server/mms_server.c:711,9'
          Dst:             Semaphore_post
        - Src:             'src/mms/iso_mms/server/mms_server.c:718,13'
          Dst:             MmsServerConnection_destroy
    - functionName:    MmsServer_startListeningThreadless
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 772
      functionLinenumberEnd: 796
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          83
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IsoServer_setConnectionHandler
        - IsoServer_setTcpPort
        - IsoServer_startListeningThreadless
        - LinkedList_getData
        - LinkedList_getNext
        - LinkedList_size
        - MmsServer_addAP
        - isoConnectionIndicationHandler
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:775,13'
          Dst:             LinkedList_size
        - Src:             'src/mms/iso_mms/server/mms_server.c:777,13'
          Dst:             MmsServer_addAP
        - Src:             'src/mms/iso_mms/server/mms_server.c:780,27'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_server.c:784,46'
          Dst:             LinkedList_getData
        - Src:             'src/mms/iso_mms/server/mms_server.c:786,13'
          Dst:             IsoServer_setConnectionHandler
        - Src:             'src/mms/iso_mms/server/mms_server.c:786,13'
          Dst:             isoConnectionIndicationHandler
        - Src:             'src/mms/iso_mms/server/mms_server.c:789,17'
          Dst:             IsoServer_setTcpPort
        - Src:             'src/mms/iso_mms/server/mms_server.c:791,13'
          Dst:             IsoServer_startListeningThreadless
        - Src:             'src/mms/iso_mms/server/mms_server.c:793,20'
          Dst:             LinkedList_getNext
    - functionName:    MmsServer_addAP
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          79
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - IsoServer_create
        - IsoServer_setAuthenticator
        - IsoServer_setLocalIpAddress
        - IsoServer_setTcpPort
        - LinkedList_add
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:151,27'
          Dst:             IsoServer_create
        - Src:             'src/mms/iso_mms/server/mms_server.c:155,9'
          Dst:             IsoServer_setLocalIpAddress
        - Src:             'src/mms/iso_mms/server/mms_server.c:158,13'
          Dst:             IsoServer_setTcpPort
        - Src:             'src/mms/iso_mms/server/mms_server.c:161,13'
          Dst:             IsoServer_setAuthenticator
        - Src:             'src/mms/iso_mms/server/mms_server.c:163,9'
          Dst:             LinkedList_add
    - functionName:    MmsServer_getDevice
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 676
      functionLinenumberEnd: 677
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmsServer_checkListAccess
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 663
      functionLinenumberEnd: 671
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmsServer_getValue
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 657
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          136
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - MmsServer_getValueFromCache
        - MmsValue_newDataAccessError
        - MmsValue_setDeletable
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:643,21'
          Dst:             MmsValue_newDataAccessError
        - Src:             'src/mms/iso_mms/server/mms_server.c:644,13'
          Dst:             MmsValue_setDeletable
        - Src:             'src/mms/iso_mms/server/mms_server.c:649,13'
          Dst:             MmsServer_getValueFromCache
    - functionName:    MmsServer_getValueFromCache
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 527
      functionLinenumberEnd: 534
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Map_getEntry
        - MmsValueCache_lookupValue
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:528,42'
          Dst:             Map_getEntry
        - Src:             'src/mms/iso_mms/server/mms_server.c:531,16'
          Dst:             MmsValueCache_lookupValue
    - functionName:    mmsServer_setValueEx
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 601
      functionLinenumberEnd: 627
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          93
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsServer_getValueFromCacheEx2
        - MmsValue_update
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:616,23'
          Dst:             MmsServer_getValueFromCacheEx2
        - Src:             'src/mms/iso_mms/server/mms_server.c:620,13'
          Dst:             MmsValue_update
    - functionName:    MmsServer_getValueFromCacheEx2
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 557
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Map_getEntry
        - MmsValueCache_lookupValueEx
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:551,42'
          Dst:             Map_getEntry
        - Src:             'src/mms/iso_mms/server/mms_server.c:554,16'
          Dst:             MmsValueCache_lookupValueEx
    - functionName:    mmsServer_setValue
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 570
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          84
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsServer_getValueFromCache
        - MmsValue_update
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:584,23'
          Dst:             MmsServer_getValueFromCache
        - Src:             'src/mms/iso_mms/server/mms_server.c:588,13'
          Dst:             MmsValue_update
    - functionName:    MmsServer_insertIntoCache
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 561
      functionLinenumberEnd: 566
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Map_getEntry
        - MmsValueCache_insertValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:562,42'
          Dst:             Map_getEntry
        - Src:             'src/mms/iso_mms/server/mms_server.c:565,9'
          Dst:             MmsValueCache_insertValue
    - functionName:    MmsServer_getValueFromCacheEx
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 546
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Map_getEntry
        - MmsValueCache_lookupValue
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:540,42'
          Dst:             Map_getEntry
        - Src:             'src/mms/iso_mms/server/mms_server.c:543,16'
          Dst:             MmsValueCache_lookupValue
    - functionName:    deleteSingleCache
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 477
      functionLinenumberEnd: 479
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValueCache_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:478,5'
          Dst:             MmsValueCache_destroy
    - functionName:    closeConnection
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 473
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsServerConnection_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:472,5'
          Dst:             MmsServerConnection_destroy
    - functionName:    MmsServer_installGetFileCompleteHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_installObtainFileHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 454
      functionLinenumberEnd: 457
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_installFileAccessHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 448
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_setClientAuthenticator
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 423
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - IsoServer_setAuthenticator
        - LinkedList_getData
        - LinkedList_getNext
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:429,27'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_server.c:433,46'
          Dst:             LinkedList_getData
        - Src:             'src/mms/iso_mms/server/mms_server.c:435,13'
          Dst:             IsoServer_setAuthenticator
        - Src:             'src/mms/iso_mms/server/mms_server.c:437,20'
          Dst:             LinkedList_getNext
    - functionName:    MmsServer_installGetNameListHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_installReadJournalHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 409
      functionLinenumberEnd: 412
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_installVariableListAccessHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_installConnectionHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_installListAccessHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_installWriteHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_installReadAccessHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_installReadHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_getObtainFileTask
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 339
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:345,9'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/server/mms_server.c:356,9'
          Dst:             Semaphore_post
    - functionName:    MmsServer_releaseTransmitBuffer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 327
      functionLinenumberEnd: 333
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:331,5'
          Dst:             Semaphore_post
    - functionName:    MmsServer_reserveTransmitBuffer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_wait
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:319,5'
          Dst:             Semaphore_wait
    - functionName:    MmsServer_unlockModel
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 309
      functionLinenumberEnd: 313
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:311,5'
          Dst:             Semaphore_post
    - functionName:    MmsServer_lockModel
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_wait
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:303,5'
          Dst:             Semaphore_wait
    - functionName:    MmsServer_setMaxDomainSpecificDataSets
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_setMaxAssociationSpecificDataSets
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_enableJournalService
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_setMaxDataSetEntries
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_enableDynamicNamedVariableListService
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 269
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_enableFileService
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_setMaxConnections
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - IsoServer_setMaxConnections
        - LinkedList_getData
        - LinkedList_getNext
        - LinkedList_size
        - MmsServer_addAP
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:243,13'
          Dst:             LinkedList_size
        - Src:             'src/mms/iso_mms/server/mms_server.c:245,13'
          Dst:             MmsServer_addAP
        - Src:             'src/mms/iso_mms/server/mms_server.c:248,27'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_server.c:252,46'
          Dst:             LinkedList_getData
        - Src:             'src/mms/iso_mms/server/mms_server.c:254,13'
          Dst:             IsoServer_setMaxConnections
        - Src:             'src/mms/iso_mms/server/mms_server.c:256,20'
          Dst:             LinkedList_getNext
    - functionName:    MmsServer_setFilestoreBasepath
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_free
        - StringUtils_copyString
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:227,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_server.c:232,35'
          Dst:             StringUtils_copyString
    - functionName:    MmsServer_isRunning
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - IsoServer_getState
        - LinkedList_get
        - LinkedList_getData
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:208,23'
          Dst:             LinkedList_get
        - Src:             'src/mms/iso_mms/server/mms_server.c:212,42'
          Dst:             LinkedList_getData
        - Src:             'src/mms/iso_mms/server/mms_server.c:214,13'
          Dst:             IsoServer_getState
    - functionName:    MmsServer_setLocalIpAddress
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - IsoServer_setLocalIpAddress
        - LinkedList_get
        - LinkedList_getData
        - LinkedList_size
        - MmsServer_addAP
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:190,9'
          Dst:             LinkedList_size
        - Src:             'src/mms/iso_mms/server/mms_server.c:192,9'
          Dst:             MmsServer_addAP
        - Src:             'src/mms/iso_mms/server/mms_server.c:195,23'
          Dst:             LinkedList_get
        - Src:             'src/mms/iso_mms/server/mms_server.c:199,42'
          Dst:             LinkedList_getData
        - Src:             'src/mms/iso_mms/server/mms_server.c:201,9'
          Dst:             IsoServer_setLocalIpAddress
    - functionName:    MmsServer_setTLSConfiguration
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - IsoServer_setTLSConfiguration
        - LinkedList_get
        - LinkedList_getData
        - LinkedList_size
        - MmsServer_addAP
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:174,9'
          Dst:             LinkedList_size
        - Src:             'src/mms/iso_mms/server/mms_server.c:176,9'
          Dst:             MmsServer_addAP
        - Src:             'src/mms/iso_mms/server/mms_server.c:179,23'
          Dst:             LinkedList_get
        - Src:             'src/mms/iso_mms/server/mms_server.c:183,50'
          Dst:             LinkedList_getData
        - Src:             'src/mms/iso_mms/server/mms_server.c:183,9'
          Dst:             IsoServer_setTLSConfiguration
    - functionName:    MmsServer_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 483
      functionLinenumberEnd: 523
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          163
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - ByteBuffer_destroy
        - IsoServer_destroy
        - LinkedList_destroyDeep
        - Map_deleteDeep
        - Memory_free
        - Semaphore_destroy
        - closeConnection
        - deleteSingleCache
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:486,9'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/mms/iso_mms/server/mms_server.c:486,9'
          Dst:             IsoServer_destroy
        - Src:             'src/mms/iso_mms/server/mms_server.c:488,9'
          Dst:             Map_deleteDeep
        - Src:             'src/mms/iso_mms/server/mms_server.c:488,9'
          Dst:             closeConnection
        - Src:             'src/mms/iso_mms/server/mms_server.c:489,9'
          Dst:             Map_deleteDeep
        - Src:             'src/mms/iso_mms/server/mms_server.c:489,9'
          Dst:             deleteSingleCache
        - Src:             'src/mms/iso_mms/server/mms_server.c:493,13'
          Dst:             Semaphore_destroy
        - Src:             'src/mms/iso_mms/server/mms_server.c:496,13'
          Dst:             Semaphore_destroy
        - Src:             'src/mms/iso_mms/server/mms_server.c:499,13'
          Dst:             Semaphore_destroy
        - Src:             'src/mms/iso_mms/server/mms_server.c:503,13'
          Dst:             ByteBuffer_destroy
        - Src:             'src/mms/iso_mms/server/mms_server.c:507,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_server.c:516,17'
          Dst:             Semaphore_destroy
        - Src:             'src/mms/iso_mms/server/mms_server.c:521,9'
          Dst:             Memory_free
    - functionName:    createValueCaches
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          58
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - Map_addEntry
        - Map_create
        - MmsValueCache_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:38,23'
          Dst:             Map_create
        - Src:             'src/mms/iso_mms/server/mms_server.c:43,36'
          Dst:             MmsValueCache_create
        - Src:             'src/mms/iso_mms/server/mms_server.c:44,9'
          Dst:             Map_addEntry
    - functionName:    MmsServer_create
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          215
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - ByteBuffer_create
        - IsoServer_create
        - LinkedList_add
        - LinkedList_create
        - Map_create
        - Memory_calloc
        - MmsServer_destroy
        - Semaphore_create
        - createValueCaches
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server.c:58,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/server/mms_server.c:63,37'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/server/mms_server.c:68,28'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/server/mms_server.c:73,37'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/server/mms_server.c:79,31'
          Dst:             LinkedList_create
        - Src:             'src/mms/iso_mms/server/mms_server.c:86,35'
          Dst:             IsoServer_create
        - Src:             'src/mms/iso_mms/server/mms_server.c:91,13'
          Dst:             LinkedList_add
        - Src:             'src/mms/iso_mms/server/mms_server.c:95,33'
          Dst:             Map_create
        - Src:             'src/mms/iso_mms/server/mms_server.c:100,29'
          Dst:             createValueCaches
        - Src:             'src/mms/iso_mms/server/mms_server.c:105,32'
          Dst:             ByteBuffer_create
        - Src:             'src/mms/iso_mms/server/mms_server.c:132,53'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_mms/server/mms_server.c:143,5'
          Dst:             MmsServer_destroy
    - functionName:    Map_deleteDeep
      functionSourceFile: '/src/libiec61850/src/common/map.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          77
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - LinkedList_destroy
        - LinkedList_getNext
        - Memory_free
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/map.c:179,27'
          Dst:             LinkedList_getNext
        - Src:             'src/common/map.c:184,17'
          Dst:             Memory_free
        - Src:             'src/common/map.c:189,9'
          Dst:             LinkedList_destroy
        - Src:             'src/common/map.c:191,9'
          Dst:             Memory_free
    - functionName:    Map_deleteStatic
      functionSourceFile: '/src/libiec61850/src/common/map.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_destroy
        - LinkedList_getNext
        - Memory_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/map.c:161,27'
          Dst:             LinkedList_getNext
        - Src:             'src/common/map.c:164,13'
          Dst:             Memory_free
        - Src:             'src/common/map.c:168,5'
          Dst:             LinkedList_destroy
        - Src:             'src/common/map.c:169,5'
          Dst:             Memory_free
    - functionName:    Map_delete
      functionSourceFile: '/src/libiec61850/src/common/map.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_destroy
        - LinkedList_getNext
        - Memory_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/map.c:140,23'
          Dst:             LinkedList_getNext
        - Src:             'src/common/map.c:145,13'
          Dst:             Memory_free
        - Src:             'src/common/map.c:147,9'
          Dst:             Memory_free
        - Src:             'src/common/map.c:150,5'
          Dst:             LinkedList_destroy
        - Src:             'src/common/map.c:151,5'
          Dst:             Memory_free
    - functionName:    Map_getEntry
      functionSourceFile: '/src/libiec61850/src/common/map.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_getNext
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/map.c:123,23'
          Dst:             LinkedList_getNext
    - functionName:    Map_removeEntry
      functionSourceFile: '/src/libiec61850/src/common/map.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          115
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - LinkedList_getNext
        - Memory_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/map.c:95,23'
          Dst:             LinkedList_getNext
        - Src:             'src/common/map.c:105,17'
          Dst:             Memory_free
        - Src:             'src/common/map.c:106,13'
          Dst:             Memory_free
        - Src:             'src/common/map.c:107,13'
          Dst:             Memory_free
    - functionName:    Map_addEntry
      functionSourceFile: '/src/libiec61850/src/common/map.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          74
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - LinkedList_add
        - Memory_malloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/map.c:68,35'
          Dst:             Memory_malloc
        - Src:             'src/common/map.c:74,9'
          Dst:             LinkedList_add
    - functionName:    Map_size
      functionSourceFile: '/src/libiec61850/src/common/map.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - LinkedList_size
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/map.c:59,12'
          Dst:             LinkedList_size
    - functionName:    comparePointerKeys
      functionSourceFile: '/src/libiec61850/src/common/map.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Map_create
      functionSourceFile: '/src/libiec61850/src/common/map.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_create
        - Memory_calloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/map.c:45,21'
          Dst:             Memory_calloc
        - Src:             'src/common/map.c:49,24'
          Dst:             LinkedList_create
    - functionName:    getChildSubString
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_value_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:98,21'
          Dst:             strlen
    - functionName:    cacheEntryDelete
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_value_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
        - MmsValue_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:275,9'
          Dst:             MmsValue_delete
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:276,9'
          Dst:             Memory_free
    - functionName:    MmsValueCache_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_value_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Map_deleteDeep
        - Memory_free
        - cacheEntryDelete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:285,9'
          Dst:             Map_deleteDeep
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:285,9'
          Dst:             cacheEntryDelete
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:286,9'
          Dst:             Memory_free
    - functionName:    searchCacheForValueEx
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_value_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          212
      EdgeCount:       55
      CyclomaticComplexity: 15
      functionsReached:
        - Map_getEntry
        - MmsDomain_getNamedVariable
        - MmsValue_getElement
        - MmsValue_getType
        - MmsVariableSpecification_getChildValue
        - MmsVariableSpecification_getNamedVariableRecursive
        - getChildSubString
        - getParentSubString
        - searchCacheForValueEx
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:170,40'
          Dst:             Map_getEntry
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:174,30'
          Dst:             getParentSubString
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:178,21'
          Dst:             searchCacheForValueEx
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:183,31'
          Dst:             getChildSubString
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:187,50'
          Dst:             MmsDomain_getNamedVariable
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:189,21'
          Dst:             MmsVariableSpecification_getChildValue
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:195,25'
          Dst:             MmsValue_getType
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:197,50'
          Dst:             MmsValue_getElement
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:203,71'
          Dst:             MmsVariableSpecification_getNamedVariableRecursive
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:211,68'
          Dst:             MmsVariableSpecification_getChildValue
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:228,28'
          Dst:             MmsVariableSpecification_getNamedVariableRecursive
    - functionName:    getParentSubString
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_value_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:79,15'
          Dst:             strlen
    - functionName:    MmsValueCache_lookupValueEx
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_value_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - Map_getEntry
        - StringUtils_copyStringMax
        - getParentSubString
        - searchCacheForValueEx
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:240,60'
          Dst:             Map_getEntry
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:254,9'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:259,31'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:261,30'
          Dst:             getParentSubString
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:264,21'
          Dst:             searchCacheForValueEx
    - functionName:    searchCacheForValue
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_value_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          90
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - Map_getEntry
        - MmsDomain_getNamedVariable
        - MmsVariableSpecification_getChildValue
        - MmsVariableSpecification_getNamedVariableRecursive
        - getChildSubString
        - getParentSubString
        - searchCacheForValue
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:107,40'
          Dst:             Map_getEntry
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:111,30'
          Dst:             getParentSubString
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:114,21'
          Dst:             searchCacheForValue
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:118,31'
          Dst:             getChildSubString
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:120,46'
          Dst:             MmsDomain_getNamedVariable
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:121,17'
          Dst:             MmsVariableSpecification_getChildValue
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:125,24'
          Dst:             MmsVariableSpecification_getNamedVariableRecursive
    - functionName:    MmsValueCache_lookupValue
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_value_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          84
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - Map_getEntry
        - StringUtils_copyStringMax
        - getParentSubString
        - searchCacheForValue
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:141,60'
          Dst:             Map_getEntry
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:153,9'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:155,30'
          Dst:             getParentSubString
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:158,21'
          Dst:             searchCacheForValue
    - functionName:    MmsValueCache_insertValue
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_value_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Map_addEntry
        - Memory_malloc
        - MmsDomain_getNamedVariable
        - StringUtils_copyString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:57,42'
          Dst:             MmsDomain_getNamedVariable
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:61,64'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:68,37'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:68,13'
          Dst:             Map_addEntry
    - functionName:    MmsValueCache_create
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_value_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
        - StringMap_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:42,42'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/server/mms_value_cache.c:48,21'
          Dst:             StringMap_create
    - functionName:    StringMap_create
      functionSourceFile: '/src/libiec61850/src/common/string_map.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Map_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/common/string_map.c:29,12'
          Dst:             Map_create
    - functionName:    mmsServer_deleteVariableList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 481
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_getNext
        - Memory_free
        - MmsNamedVariableList_destroy
        - MmsNamedVariableList_getName
        - strcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:463,26'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:469,20'
          Dst:             MmsNamedVariableList_getName
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:469,13'
          Dst:             strcmp
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:472,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:473,13'
          Dst:             MmsNamedVariableList_destroy
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:479,19'
          Dst:             LinkedList_getNext
    - functionName:    mmsServer_getNamedVariableListWithName
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_getNext
        - MmsNamedVariableList_getName
        - strcmp
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:441,26'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:447,20'
          Dst:             MmsNamedVariableList_getName
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:447,13'
          Dst:             strcmp
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:453,19'
          Dst:             LinkedList_getNext
    - functionName:    mmsServer_getNumberOfElements
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 434
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          74
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - asn_INTEGER2long
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:426,9'
          Dst:             asn_INTEGER2long
    - functionName:    mmsServer_getLowIndex
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          107
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - asn_INTEGER2long
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:394,9'
          Dst:             asn_INTEGER2long
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:403,9'
          Dst:             asn_INTEGER2long
    - functionName:    mmsServer_getComponentOfArrayElement
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 378
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          263
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - MmsValue_getElement
        - StringUtils_appendString
        - mmsServer_getComponentOfArrayElement
        - mmsServer_isAccessToArrayComponent
        - strlen
        - strncmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:315,9'
          Dst:             mmsServer_isAccessToArrayComponent
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:335,23'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:338,21'
          Dst:             strncmp
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:341,39'
          Dst:             MmsValue_getElement
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:345,29'
          Dst:             mmsServer_isAccessToArrayComponent
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:350,33'
          Dst:             StringUtils_appendString
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:351,33'
          Dst:             StringUtils_appendString
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:355,37'
          Dst:             mmsServer_getComponentOfArrayElement
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:364,33'
          Dst:             StringUtils_appendString
    - functionName:    mmsServer_isAccessToArrayComponent
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          81
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmsServer_isComponentAccess
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          68
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmsServer_isIndexAccess
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 262
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          87
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmsMsg_createInitiateErrorPdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_encodeTL
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:231,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:232,14'
          Dst:             BerEncoder_encodeTL
    - functionName:    mmsMsg_createServiceErrorPdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmsServer_createServiceErrorPduWithServiceSpecificInfo
      functionUses:    93
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:217,5'
          Dst:             mmsServer_createServiceErrorPduWithServiceSpecificInfo
    - functionName:    mmsServer_createServiceErrorPduWithServiceSpecificInfo
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          144
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeOctetString
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - mapErrorTypeToErrorClass
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:171,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:176,32'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:181,37'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:190,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:192,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:193,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:195,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:196,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:201,5'
          Dst:             mapErrorTypeToErrorClass
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:208,18'
          Dst:             BerEncoder_encodeOctetString
    - functionName:    mapErrorTypeToErrorClass
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          166
      EdgeCount:       40
      CyclomaticComplexity: 21
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_server_common.c:62,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    mmsServer_createConfirmedResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
        - asn_long2INTEGER
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:47,35'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:53,9'
          Dst:             asn_long2INTEGER
    - functionName:    mmsServer_write_out
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ByteBuffer_append
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_common.c:33,25'
          Dst:             ByteBuffer_append
    - functionName:    deleteVariableListEntry
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsNamedVariableListEntry_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list.c:124,2'
          Dst:             MmsNamedVariableListEntry_destroy
    - functionName:    MmsNamedVariableListEntry_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list.c:53,3'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list.c:56,4'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list.c:58,3'
          Dst:             Memory_free
    - functionName:    MmsNamedVariableList_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_destroyDeep
        - Memory_free
        - deleteVariableListEntry
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list.c:132,3'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list.c:132,3'
          Dst:             deleteVariableListEntry
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list.c:133,3'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list.c:134,3'
          Dst:             Memory_free
    - functionName:    MmsNamedVariableList_getVariableList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsNamedVariableList_addVariable
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - LinkedList_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list.c:111,2'
          Dst:             LinkedList_add
    - functionName:    MmsNamedVariableList_isDeletable
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsNamedVariableList_getName
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsNamedVariableList_getDomain
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsNamedVariableList_create
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_create
        - Memory_malloc
        - StringUtils_copyString
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list.c:77,53'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list.c:82,16'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list.c:83,27'
          Dst:             LinkedList_create
    - functionName:    MmsNamedVariableListEntry_getVariableName
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsNamedVariableListEntry_getDomain
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsNamedVariableListEntry_create
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_malloc
        - StringUtils_copyString
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list.c:31,63'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list.c:36,24'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list.c:40,26'
          Dst:             StringUtils_copyString
    - functionName:    MmsDomain_getNamedVariable
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_domain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          184
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - MmsVariableSpecification_getNamedVariableRecursive
        - strchr
        - strcmp
        - strlen
        - strncmp
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_domain.c:149,21'
          Dst:             strchr
        - Src:             'src/mms/iso_mms/server/mms_domain.c:156,9'
          Dst:             strcmp
        - Src:             'src/mms/iso_mms/server/mms_domain.c:168,9'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_domain.c:170,10'
          Dst:             strncmp
        - Src:             'src/mms/iso_mms/server/mms_domain.c:178,21'
          Dst:             MmsVariableSpecification_getNamedVariableRecursive
    - functionName:    MmsDomain_getNamedVariableLists
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_domain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsDomain_deleteNamedVariableList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_domain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmsServer_deleteVariableList
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_domain.c:135,2'
          Dst:             mmsServer_deleteVariableList
    - functionName:    MmsDomain_getNamedVariableList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_domain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mmsServer_getNamedVariableListWithName
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_domain.c:126,17'
          Dst:             mmsServer_getNamedVariableListWithName
    - functionName:    MmsDomain_addNamedVariableList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_domain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - LinkedList_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_domain.c:113,2'
          Dst:             LinkedList_add
    - functionName:    MmsDomain_getJournal
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_domain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          66
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - LinkedList_getData
        - LinkedList_getNext
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_domain.c:94,30'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_domain.c:98,50'
          Dst:             LinkedList_getData
        - Src:             'src/mms/iso_mms/server/mms_domain.c:100,17'
          Dst:             strcmp
        - Src:             'src/mms/iso_mms/server/mms_domain.c:103,23'
          Dst:             LinkedList_getNext
    - functionName:    MmsDomain_addJournal
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_domain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_add
        - LinkedList_create
        - MmsJournal_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_domain.c:82,26'
          Dst:             LinkedList_create
        - Src:             'src/mms/iso_mms/server/mms_domain.c:84,26'
          Dst:             MmsJournal_create
        - Src:             'src/mms/iso_mms/server/mms_domain.c:86,5'
          Dst:             LinkedList_add
    - functionName:    MmsDomain_getName
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_domain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    freeNamedVariables
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_domain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - MmsVariableSpecification_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_domain.c:33,6'
          Dst:             MmsVariableSpecification_destroy
    - functionName:    MmsDomain_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_domain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_destroyDeep
        - Memory_free
        - MmsJournal_destroy
        - MmsNamedVariableList_destroy
        - freeNamedVariables
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_domain.c:54,2'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_domain.c:57,3'
          Dst:             freeNamedVariables
        - Src:             'src/mms/iso_mms/server/mms_domain.c:60,3'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_domain.c:64,6'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/mms/iso_mms/server/mms_domain.c:64,6'
          Dst:             MmsJournal_destroy
        - Src:             'src/mms/iso_mms/server/mms_domain.c:67,2'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/mms/iso_mms/server/mms_domain.c:67,2'
          Dst:             MmsNamedVariableList_destroy
        - Src:             'src/mms/iso_mms/server/mms_domain.c:69,2'
          Dst:             Memory_free
    - functionName:    MmsDomain_create
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_domain.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_create
        - Memory_calloc
        - StringUtils_copyString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_domain.c:40,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/server/mms_domain.c:43,28'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/server/mms_domain.c:44,36'
          Dst:             LinkedList_create
    - functionName:    MmsJournal_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_journal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_journal.c:50,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_journal.c:51,9'
          Dst:             Memory_free
    - functionName:    MmsJournal_create
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_journal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_malloc
        - StringUtils_copyString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_journal.c:34,36'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/server/mms_journal.c:38,22'
          Dst:             StringUtils_copyString
    - functionName:    mmsFileReadHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 495
      functionLinenumberEnd: 522
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - FileSystem_writeFile
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:509,13'
          Dst:             FileSystem_writeFile
    - functionName:    getUploadTaskByInvokeId
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 482
      functionLinenumberEnd: 491
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          69
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    handleConfirmedErrorPdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 478
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          141
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
        - mmsMsg_parseConfirmedErrorPDU
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:439,9'
          Dst:             mmsMsg_parseConfirmedErrorPDU
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:451,17'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:461,25'
          Dst:             Semaphore_post
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:468,17'
          Dst:             Semaphore_post
    - functionName:    handleConfirmedResponsePdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 703
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          286
      EdgeCount:       60
      CyclomaticComplexity: 13
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
        - FileSystem_closeFile
        - getUploadTaskByInvokeId
        - mmsFileReadHandler
        - mmsMsg_createMmsRejectPdu
        - mmsMsg_parseFileOpenResponse
        - mmsMsg_parseFileReadResponse
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_server_connection.c:563,13'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/server/mms_server_connection.c:685,13'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:545,17'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:553,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:557,13'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:573,50'
          Dst:             getUploadTaskByInvokeId
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:579,29'
          Dst:             mmsMsg_parseFileOpenResponse
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:606,50'
          Dst:             getUploadTaskByInvokeId
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:618,33'
          Dst:             mmsMsg_parseFileReadResponse
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:618,33'
          Dst:             mmsFileReadHandler
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:654,50'
          Dst:             getUploadTaskByInvokeId
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:660,29'
          Dst:             FileSystem_closeFile
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:678,17'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:688,28'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:695,17'
          Dst:             mmsMsg_createMmsRejectPdu
    - functionName:    mmsMsg_createMmsRejectPdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - mmsMsg_encodeMmsRejectPdu
      functionUses:    82
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_server_connection.c:105,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:133,5'
          Dst:             mmsMsg_encodeMmsRejectPdu
    - functionName:    mmsMsg_encodeMmsRejectPdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          107
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:78,26'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:83,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:88,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:89,18'
          Dst:             BerEncoder_encodeUInt32
    - functionName:    handleConfirmedRequestPdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 423
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         66
      ICount:          472
      EdgeCount:       78
      CyclomaticComplexity: 14
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
        - mmsMsg_createMmsRejectPdu
        - mmsServer_handleDefineNamedVariableListRequest
        - mmsServer_handleDeleteNamedVariableListRequest
        - mmsServer_handleFileCloseRequest
        - mmsServer_handleFileDeleteRequest
        - mmsServer_handleFileDirectoryRequest
        - mmsServer_handleFileOpenRequest
        - mmsServer_handleFileReadRequest
        - mmsServer_handleGetNameListRequest
        - mmsServer_handleGetNamedVariableListAttributesRequest
        - mmsServer_handleGetVariableAccessAttributesRequest
        - mmsServer_handleIdentifyRequest
        - mmsServer_handleObtainFileRequest
        - mmsServer_handleReadJournalRequest
        - mmsServer_handleReadRequest
        - mmsServer_handleStatusRequest
        - mmsServer_handleWriteRequest
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_server_connection.c:177,13'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/server/mms_server_connection.c:316,13'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:159,17'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:167,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:171,13'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:185,21'
          Dst:             mmsServer_handleObtainFileRequest
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:187,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:203,21'
          Dst:             mmsServer_handleReadJournalRequest
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:205,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:221,21'
          Dst:             mmsServer_handleFileOpenRequest
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:223,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:235,21'
          Dst:             mmsServer_handleFileReadRequest
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:237,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:248,21'
          Dst:             mmsServer_handleFileCloseRequest
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:250,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:281,21'
          Dst:             mmsServer_handleFileDeleteRequest
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:283,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:296,21'
          Dst:             mmsServer_handleFileDirectoryRequest
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:298,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:309,17'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:319,28'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:327,17'
          Dst:             mmsServer_handleStatusRequest
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:333,17'
          Dst:             mmsServer_handleGetNameListRequest
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:340,17'
          Dst:             mmsServer_handleIdentifyRequest
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:345,17'
          Dst:             mmsServer_handleReadRequest
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:351,17'
          Dst:             mmsServer_handleWriteRequest
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:358,17'
          Dst:             mmsServer_handleGetVariableAccessAttributesRequest
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:370,21'
          Dst:             mmsServer_handleDefineNamedVariableListRequest
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:374,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:379,21'
          Dst:             mmsServer_handleDeleteNamedVariableListRequest
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:383,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:405,17'
          Dst:             mmsServer_handleGetNamedVariableListAttributesRequest
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:415,17'
          Dst:             mmsMsg_createMmsRejectPdu
    - functionName:    MmsServerConnection_parseMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 708
      functionLinenumberEnd: 774
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          144
      EdgeCount:       22
      CyclomaticComplexity: 4
      functionsReached:
        - BerDecoder_decodeLength
        - handleConfirmedErrorPdu
        - handleConfirmedRequestPdu
        - handleConfirmedResponsePdu
        - mmsMsg_createMmsRejectPdu
        - mmsServer_handleInitiateRequest
        - mmsServer_writeConcludeResponsePdu
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_server_connection.c:730,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:722,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:733,9'
          Dst:             mmsServer_handleInitiateRequest
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:737,9'
          Dst:             handleConfirmedRequestPdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:742,9'
          Dst:             handleConfirmedResponsePdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:746,9'
          Dst:             handleConfirmedErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:751,9'
          Dst:             mmsServer_writeConcludeResponsePdu
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:763,9'
          Dst:             mmsMsg_createMmsRejectPdu
    - functionName:    MmsServerConnection_getServer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 943
      functionLinenumberEnd: 944
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServerConnection_getFilesystemBasepath
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 930
      functionLinenumberEnd: 939
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServerConnection_getNextRequestInvokeId
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 922
      functionLinenumberEnd: 924
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServerConnection_getLastInvokeId
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 915
      functionLinenumberEnd: 916
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServerConnection_getNamedVariableLists
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 908
      functionLinenumberEnd: 909
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServerConnection_getSecurityToken
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 901
      functionLinenumberEnd: 902
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IsoConnection_getSecurityToken
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:902,12'
          Dst:             IsoConnection_getSecurityToken
    - functionName:    MmsServerConnection_getLocalAddress
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 895
      functionLinenumberEnd: 896
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IsoConnection_getLocalAddress
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:896,12'
          Dst:             IsoConnection_getLocalAddress
    - functionName:    MmsServerConnection_getClientAddress
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 889
      functionLinenumberEnd: 890
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IsoConnection_getPeerAddress
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:890,12'
          Dst:             IsoConnection_getPeerAddress
    - functionName:    MmsServerConnection_getNamedVariableList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 882
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmsServer_getNamedVariableListWithName
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:883,12'
          Dst:             mmsServer_getNamedVariableListWithName
    - functionName:    MmsServerConnection_deleteNamedVariableList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 876
      functionLinenumberEnd: 878
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmsServer_deleteVariableList
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:877,5'
          Dst:             mmsServer_deleteVariableList
    - functionName:    MmsServerConnection_addNamedVariableList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 866
      functionLinenumberEnd: 871
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - LinkedList_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:869,5'
          Dst:             LinkedList_add
    - functionName:    MmsServerConnection_sendMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 859
      functionLinenumberEnd: 860
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IsoConnection_sendMessage
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:860,12'
          Dst:             IsoConnection_sendMessage
    - functionName:    MmsServerConnection_getMaxMmsPduSize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 853
      functionLinenumberEnd: 854
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServerConnection_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 833
      functionLinenumberEnd: 849
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          65
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - FileSystem_closeFile
        - LinkedList_destroyDeep
        - Memory_free
        - MmsNamedVariableList_destroy
        - mmsServerConnection_stopFileUploadTasks
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:839,13'
          Dst:             FileSystem_closeFile
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:841,5'
          Dst:             mmsServerConnection_stopFileUploadTasks
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:845,5'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:845,5'
          Dst:             MmsNamedVariableList_destroy
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:848,5'
          Dst:             Memory_free
    - functionName:    connectionTickHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 786
      functionLinenumberEnd: 790
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsServer_callConnectionHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:789,5'
          Dst:             MmsServer_callConnectionHandler
    - functionName:    messageReceived
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 778
      functionLinenumberEnd: 782
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsServerConnection_parseMessage
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:781,5'
          Dst:             MmsServerConnection_parseMessage
    - functionName:    MmsServerConnection_init
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_server_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 798
      functionLinenumberEnd: 828
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - IsoConnection_installListener
        - LinkedList_create
        - Memory_calloc
        - connectionTickHandler
        - messageReceived
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:802,38'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:816,36'
          Dst:             LinkedList_create
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:823,9'
          Dst:             IsoConnection_installListener
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:823,9'
          Dst:             messageReceived
        - Src:             'src/mms/iso_mms/server/mms_server_connection.c:823,9'
          Dst:             connectionTickHandler
    - functionName:    encodeInitResponseDetail
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_association_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          188
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - BerEncoder_encodeBitString
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32WithTL
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:82,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:84,14'
          Dst:             BerEncoder_encodeUInt32WithTL
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:89,14'
          Dst:             BerEncoder_encodeBitString
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:198,14'
          Dst:             BerEncoder_encodeBitString
    - functionName:    parseInitRequestDetail
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_association_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 238
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          134
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_association_service.c:260,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:244,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:264,40'
          Dst:             BerDecoder_decodeUint32
    - functionName:    mmsServer_writeConcludeResponsePdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_association_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ByteBuffer_appendByte
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:430,5'
          Dst:             ByteBuffer_appendByte
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:431,5'
          Dst:             ByteBuffer_appendByte
    - functionName:    createInitiateResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_association_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          104
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32WithTL
        - encodeInitResponseDetail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:211,35'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:212,35'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:213,35'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:214,35'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:216,31'
          Dst:             encodeInitResponseDetail
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:219,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:221,14'
          Dst:             BerEncoder_encodeUInt32WithTL
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:223,14'
          Dst:             BerEncoder_encodeUInt32WithTL
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:225,14'
          Dst:             BerEncoder_encodeUInt32WithTL
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:227,14'
          Dst:             BerEncoder_encodeUInt32WithTL
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:229,14'
          Dst:             encodeInitResponseDetail
    - functionName:    parseInitiateRequestPdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_association_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 406
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          223
      EdgeCount:       39
      CyclomaticComplexity: 9
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
        - parseInitRequestDetail
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_association_service.c:341,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:325,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:344,32'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:370,47'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:378,46'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:385,47'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:390,17'
          Dst:             parseInitRequestDetail
    - functionName:    mmsServer_handleInitiateRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_association_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 411
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - createInitiateResponse
        - mmsMsg_createInitiateErrorPdu
        - parseInitiateRequestPdu
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:412,9'
          Dst:             parseInitiateRequestPdu
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:414,9'
          Dst:             createInitiateResponse
        - Src:             'src/mms/iso_mms/server/mms_association_service.c:419,9'
          Dst:             mmsMsg_createInitiateErrorPdu
    - functionName:    entryDataCallback
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_journal_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - char
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          311
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeOctetString
        - BerEncoder_encodeTL
        - MmsValue_encodeMmsData
        - MmsValue_setBinaryTime
        - MmsValue_setBitStringFromInteger
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:91,34'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:92,35'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:94,37'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:96,41'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:105,9'
          Dst:             MmsValue_setBitStringFromInteger
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:107,39'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:111,42'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:123,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:126,18'
          Dst:             BerEncoder_encodeOctetString
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:129,18'
          Dst:             BerEncoder_encodeOctetString
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:133,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:135,18'
          Dst:             BerEncoder_encodeOctetString
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:137,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:138,18'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:146,40'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:148,27'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:152,35'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:160,24'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:162,24'
          Dst:             BerEncoder_encodeOctetString
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:164,24'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:165,24'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:167,24'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:172,9'
          Dst:             MmsValue_setBinaryTime
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:173,24'
          Dst:             BerEncoder_encodeOctetString
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:175,24'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:176,24'
          Dst:             BerEncoder_encodeTL
    - functionName:    entryCallback
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_journal_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          60
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parseStringWithMaxLength
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_journal_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          105
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - BerDecoder_decodeLength
        - mmsMsg_createMmsRejectPdu
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:199,9'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:203,15'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:207,9'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:213,9'
          Dst:             mmsMsg_createMmsRejectPdu
    - functionName:    mmsServer_handleReadJournalRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_journal_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 608
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         112
      ICount:          829
      EdgeCount:       146
      CyclomaticComplexity: 36
      functionsReached:
        - BerDecoder_decodeLength
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeBoolean
        - BerEncoder_encodeLength
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - LogStorage_getEntries
        - LogStorage_getEntriesAfter
        - MmsDevice_getDomain
        - MmsDomain_getJournal
        - MmsServer_getDevice
        - MmsValue_getBinaryTimeAsUtcMs
        - entryCallback
        - entryDataCallback
        - mmsMsg_createMmsRejectPdu
        - mmsMsg_createServiceErrorPdu
        - parseStringWithMaxLength
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_journal_service.c:261,9'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/server/mms_journal_service.c:281,17'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/server/mms_journal_service.c:412,21'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:253,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:257,13'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:268,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:273,26'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:277,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:285,26'
          Dst:             parseStringWithMaxLength
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:289,26'
          Dst:             parseStringWithMaxLength
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:298,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:311,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:319,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:323,26'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:327,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:342,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:356,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:364,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:368,26'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:372,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:387,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:404,30'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:408,25'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:427,29'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:446,29'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:453,25'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:464,13'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:475,9'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:482,28'
          Dst:             MmsServer_getDevice
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:484,28'
          Dst:             MmsDevice_getDomain
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:491,9'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:496,29'
          Dst:             MmsDomain_getJournal
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:503,9'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:517,13'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:538,47'
          Dst:             MmsValue_getBinaryTimeAsUtcMs
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:538,91'
          Dst:             MmsValue_getBinaryTimeAsUtcMs
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:538,13'
          Dst:             LogStorage_getEntries
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:538,13'
          Dst:             entryCallback
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:538,13'
          Dst:             entryDataCallback
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:543,52'
          Dst:             MmsValue_getBinaryTimeAsUtcMs
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:543,13'
          Dst:             LogStorage_getEntriesAfter
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:543,13'
          Dst:             entryCallback
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:543,13'
          Dst:             entryDataCallback
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:551,13'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:567,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:568,37'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:577,35'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:582,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:584,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:585,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:590,14'
          Dst:             BerEncoder_encodeLength
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:592,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_journal_service.c:605,18'
          Dst:             BerEncoder_encodeBoolean
    - functionName:    MmsDevice_getNamedVariableListWithName
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_device.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mmsServer_getNamedVariableListWithName
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_device.c:134,12'
          Dst:             mmsServer_getNamedVariableListWithName
    - functionName:    MmsDevice_getNamedVariableLists
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_device.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsDevice_getDomain
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_device.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    23
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_device.c:71,13'
          Dst:             strcmp
    - functionName:    MmsDevice_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_device.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          52
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_destroyDeep
        - Memory_free
        - MmsDomain_destroy
        - MmsNamedVariableList_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_device.c:46,9'
          Dst:             MmsDomain_destroy
        - Src:             'src/mms/iso_mms/server/mms_device.c:59,5'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/mms/iso_mms/server/mms_device.c:59,5'
          Dst:             MmsNamedVariableList_destroy
        - Src:             'src/mms/iso_mms/server/mms_device.c:61,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_device.c:62,5'
          Dst:             Memory_free
    - functionName:    MmsDevice_create
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_device.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - LinkedList_create
        - Memory_calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_device.c:32,36'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/server/mms_device.c:35,32'
          Dst:             LinkedList_create
    - functionName:    MmsServer_setStatusRequestListener
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_status_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_getVMDPhysicalStatus
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_status_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_getVMDLogicalStatus
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_status_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_setVMDStatus
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_status_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmsServer_handleStatusRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_status_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          164
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - BerDecoder_decodeBoolean
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_status_service.c:42,30'
          Dst:             BerDecoder_decodeBoolean
        - Src:             'src/mms/iso_mms/server/mms_status_service.c:56,31'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_status_service.c:64,40'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_status_service.c:65,39'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_status_service.c:69,62'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_status_service.c:72,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_status_service.c:75,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_status_service.c:76,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/server/mms_status_service.c:78,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_status_service.c:79,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_status_service.c:80,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/server/mms_status_service.c:81,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_status_service.c:82,14'
          Dst:             BerEncoder_encodeUInt32
    - functionName:    createStringsFromNamedVariableList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_get_namelist_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_add
        - LinkedList_create
        - LinkedList_getNext
        - MmsNamedVariableList_getName
        - StringUtils_copyString
        - mmsServer_checkListAccess
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:321,27'
          Dst:             LinkedList_create
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:322,39'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:329,30'
          Dst:             mmsServer_checkListAccess
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:334,44'
          Dst:             MmsNamedVariableList_getName
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:334,21'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:333,13'
          Dst:             LinkedList_add
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:337,32'
          Dst:             LinkedList_getNext
    - functionName:    appendMmsSubVariable
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_get_namelist_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          117
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - Memory_malloc
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:111,19'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:112,20'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:116,29'
          Dst:             Memory_malloc
    - functionName:    addSubNamedVaribleNamesToList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_get_namelist_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          179
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - LinkedList_insertAfter
        - Memory_free
        - Memory_malloc
        - addSubNamedVaribleNamesToList
        - appendMmsSubVariable
        - mmsServer_checkListAccess
        - sortIndex
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:149,29'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:156,13'
          Dst:             sortIndex
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:162,38'
          Dst:             appendMmsSubVariable
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:169,42'
          Dst:             mmsServer_checkListAccess
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:173,39'
          Dst:             LinkedList_insertAfter
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:176,39'
          Dst:             addSubNamedVaribleNamesToList
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:184,25'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:190,13'
          Dst:             Memory_free
    - functionName:    sortIndex
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_get_namelist_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          113
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - StringUtils_compareStrings
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:96,17'
          Dst:             StringUtils_compareStrings
    - functionName:    getNamedVariableListAssociationSpecific
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_get_namelist_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 389
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsServerConnection_getNamedVariableLists
        - createStringsFromNamedVariableList
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:392,32'
          Dst:             MmsServerConnection_getNamedVariableLists
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:394,16'
          Dst:             createStringsFromNamedVariableList
    - functionName:    getNamedVariableListsVMDSpecific
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_get_namelist_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsDevice_getNamedVariableLists
        - MmsServer_getDevice
        - createStringsFromNamedVariableList
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:375,25'
          Dst:             MmsServer_getDevice
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:379,32'
          Dst:             MmsDevice_getNamedVariableLists
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:381,16'
          Dst:             createStringsFromNamedVariableList
    - functionName:    getDomainNames
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_get_namelist_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          59
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_create
        - LinkedList_insertAfter
        - MmsServer_getDevice
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:51,25'
          Dst:             MmsServer_getDevice
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:53,23'
          Dst:             LinkedList_create
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:61,23'
          Dst:             LinkedList_insertAfter
    - functionName:    getNamedVariableListsDomainSpecific
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_get_namelist_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          91
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsDevice_getDomain
        - MmsDomain_getNamedVariableLists
        - MmsServer_getDevice
        - createStringsFromNamedVariableList
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:346,25'
          Dst:             MmsServer_getDevice
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:350,25'
          Dst:             MmsDevice_getDomain
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:363,40'
          Dst:             MmsDomain_getNamedVariableLists
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:365,24'
          Dst:             createStringsFromNamedVariableList
    - functionName:    getJournalListDomainSpecific
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_get_namelist_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          137
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - LinkedList_add
        - LinkedList_create
        - LinkedList_getData
        - LinkedList_getNext
        - MmsDevice_getDomain
        - MmsServer_getDevice
        - mmsServer_checkListAccess
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:204,25'
          Dst:             MmsServer_getDevice
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:208,25'
          Dst:             MmsDevice_getDomain
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:221,24'
          Dst:             LinkedList_create
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:227,39'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:229,55'
          Dst:             LinkedList_getData
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:231,35'
          Dst:             mmsServer_checkListAccess
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:235,25'
          Dst:             LinkedList_add
    - functionName:    createNameListResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_get_namelist_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 409
      functionLinenumberEnd: 511
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          285
      EdgeCount:       48
      CyclomaticComplexity: 13
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineEncodedStringSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeBoolean
        - BerEncoder_encodeStringWithTag
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - LinkedList_getNext
        - mmsMsg_createServiceErrorPdu
        - strcmp
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:416,27'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:418,17'
          Dst:             strcmp
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:427,13'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:446,23'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:450,25'
          Dst:             BerEncoder_determineEncodedStringSize
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:465,41'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:472,49'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:474,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:484,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:486,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:487,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:489,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:490,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:494,23'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:496,18'
          Dst:             BerEncoder_encodeStringWithTag
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:505,18'
          Dst:             BerEncoder_encodeBoolean
    - functionName:    getNameListDomainSpecific
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_get_namelist_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 313
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          225
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - LinkedList_create
        - LinkedList_insertAfter
        - Memory_free
        - Memory_malloc
        - MmsDevice_getDomain
        - MmsServer_getDevice
        - StringUtils_copyString
        - addSubNamedVaribleNamesToList
        - mmsServer_checkListAccess
        - sortIndex
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:248,25'
          Dst:             MmsServer_getDevice
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:252,25'
          Dst:             MmsDevice_getDomain
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:265,24'
          Dst:             LinkedList_create
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:273,33'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:278,13'
          Dst:             sortIndex
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:283,38'
          Dst:             mmsServer_checkListAccess
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:288,63'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:288,31'
          Dst:             LinkedList_insertAfter
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:296,31'
          Dst:             addSubNamedVaribleNamesToList
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:307,13'
          Dst:             Memory_free
    - functionName:    mmsServer_handleGetNameListRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_get_namelist_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 519
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         93
      ICount:          613
      EdgeCount:       119
      CyclomaticComplexity: 28
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
        - LinkedList_create
        - LinkedList_destroy
        - LinkedList_destroyStatic
        - StringUtils_sortList
        - createNameListResponse
        - getDomainNames
        - getJournalListDomainSpecific
        - getNameListDomainSpecific
        - getNamedVariableListAssociationSpecific
        - getNamedVariableListsDomainSpecific
        - getNamedVariableListsVMDSpecific
        - mmsMsg_createMmsRejectPdu
        - mmsMsg_createServiceErrorPdu
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_get_namelist_service.c:543,9'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/server/mms_get_namelist_service.c:589,17'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:535,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:539,13'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:552,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:557,26'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:561,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:565,31'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:576,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:581,26'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:585,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:605,21'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:646,13'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:660,13'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:672,35'
          Dst:             getNameListDomainSpecific
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:675,17'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:678,17'
          Dst:             createNameListResponse
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:679,17'
          Dst:             LinkedList_destroy
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:684,35'
          Dst:             getJournalListDomainSpecific
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:687,17'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:691,17'
          Dst:             StringUtils_sortList
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:694,17'
          Dst:             createNameListResponse
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:695,17'
          Dst:             LinkedList_destroyStatic
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:701,35'
          Dst:             getNamedVariableListsDomainSpecific
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:704,17'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:708,17'
          Dst:             StringUtils_sortList
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:711,17'
          Dst:             createNameListResponse
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:712,17'
          Dst:             LinkedList_destroy
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:721,13'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:739,39'
          Dst:             getDomainNames
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:742,17'
          Dst:             StringUtils_sortList
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:745,17'
          Dst:             createNameListResponse
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:747,17'
          Dst:             LinkedList_destroyStatic
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:751,17'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:796,39'
          Dst:             getNamedVariableListsVMDSpecific
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:799,17'
          Dst:             StringUtils_sortList
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:802,17'
          Dst:             createNameListResponse
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:804,17'
          Dst:             LinkedList_destroy
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:809,17'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:818,35'
          Dst:             LinkedList_create
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:820,13'
          Dst:             createNameListResponse
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:822,13'
          Dst:             LinkedList_destroy
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:830,13'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:842,35'
          Dst:             getNamedVariableListAssociationSpecific
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:845,13'
          Dst:             StringUtils_sortList
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:848,13'
          Dst:             createNameListResponse
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:850,13'
          Dst:             LinkedList_destroy
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:853,13'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_get_namelist_service.c:863,9'
          Dst:             mmsMsg_createServiceErrorPdu
    - functionName:    MmsServer_setServerIdentity
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_identify_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_getRevision
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_identify_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_getModelName
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_identify_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServer_getVendorName
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_identify_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmsServer_handleIdentifyRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_identify_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          120
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeStringWithTag
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - MmsServer_getModelName
        - MmsServer_getRevision
        - MmsServer_getVendorName
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:38,31'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:42,40'
          Dst:             MmsServer_getVendorName
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:42,33'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:43,39'
          Dst:             MmsServer_getModelName
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:43,32'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:44,38'
          Dst:             MmsServer_getRevision
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:44,31'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:46,36'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:47,15'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:47,65'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:50,64'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:54,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:57,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:58,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:60,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:61,51'
          Dst:             MmsServer_getVendorName
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:61,14'
          Dst:             BerEncoder_encodeStringWithTag
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:62,51'
          Dst:             MmsServer_getModelName
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:62,14'
          Dst:             BerEncoder_encodeStringWithTag
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:63,51'
          Dst:             MmsServer_getRevision
        - Src:             'src/mms/iso_mms/server/mms_identify_service.c:63,14'
          Dst:             BerEncoder_encodeStringWithTag
    - functionName:    encodeVariableAccessSpecification
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_read_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 387
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          196
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeStringWithTag
        - BerEncoder_encodeTL
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:391,23'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:393,35'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:397,29'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:399,38'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:404,27'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:408,27'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:412,27'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:421,11'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:425,12'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:428,13'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:431,13'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:434,13'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:438,13'
          Dst:             BerEncoder_encodeStringWithTag
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:440,12'
          Dst:             BerEncoder_encodeStringWithTag
    - functionName:    addNamedVariableToNamedVariableListResultList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_read_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 690
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          136
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - MmsValue_getElement
        - MmsValue_getType
        - MmsVariableSpecification_getChildValue
        - appendErrorToResultList
        - appendValueToResultList
        - mmsServer_getValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:697,27'
          Dst:             mmsServer_getValue
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:703,21'
          Dst:             MmsValue_getType
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:705,46'
          Dst:             MmsValue_getElement
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:709,25'
          Dst:             appendErrorToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:715,53'
          Dst:             MmsVariableSpecification_getChildValue
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:719,29'
          Dst:             appendValueToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:728,25'
          Dst:             appendValueToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:736,21'
          Dst:             appendErrorToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:741,17'
          Dst:             appendValueToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:746,13'
          Dst:             appendErrorToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:750,9'
          Dst:             appendErrorToResultList
    - functionName:    appendErrorToResultList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_read_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_newDataAccessError
        - MmsValue_setDeletable
        - appendValueToResultList
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:120,23'
          Dst:             MmsValue_newDataAccessError
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:121,5'
          Dst:             MmsValue_setDeletable
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:122,5'
          Dst:             appendValueToResultList
    - functionName:    appendValueToResultList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_read_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_add
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:114,9'
          Dst:             LinkedList_add
    - functionName:    createNamedVariableListResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_read_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 756
      functionLinenumberEnd: 784
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          95
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_create
        - LinkedList_getNext
        - MmsDomain_getNamedVariable
        - MmsNamedVariableListEntry_getDomain
        - MmsNamedVariableListEntry_getVariableName
        - MmsNamedVariableList_getVariableList
        - addNamedVariableToNamedVariableListResultList
        - deleteValueList
        - encodeReadResponse
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:757,37'
          Dst:             LinkedList_create
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:758,25'
          Dst:             MmsNamedVariableList_getVariableList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:760,24'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:766,31'
          Dst:             MmsNamedVariableListEntry_getDomain
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:767,24'
          Dst:             MmsNamedVariableListEntry_getVariableName
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:769,45'
          Dst:             MmsDomain_getNamedVariable
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:772,3'
          Dst:             addNamedVariableToNamedVariableListResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:775,14'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:779,3'
          Dst:             encodeReadResponse
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:781,3'
          Dst:             encodeReadResponse
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:783,2'
          Dst:             deleteValueList
    - functionName:    encodeReadResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_read_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 545
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          214
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
        - LinkedList_getNext
        - LinkedList_size
        - MmsValue_encodeMmsData
        - encodeVariableAccessSpecification
        - mmsMsg_createServiceErrorPdu
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:454,25'
          Dst:             LinkedList_size
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:459,29'
          Dst:             encodeVariableAccessSpecification
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:465,24'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:471,29'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:473,17'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:477,13'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:483,13'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:486,29'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:490,31'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:499,9'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:511,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:514,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:515,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:518,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:522,18'
          Dst:             encodeVariableAccessSpecification
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:525,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:528,13'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:534,18'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:536,17'
          Dst:             LinkedList_getNext
    - functionName:    deleteValueList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_read_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_destroyStatic
        - LinkedList_getNext
        - MmsValue_deleteConditional
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:128,24'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:134,9'
          Dst:             MmsValue_deleteConditional
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:136,17'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:139,5'
          Dst:             LinkedList_destroyStatic
    - functionName:    addNamedVariableValue
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_read_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          135
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - MmsValue_createEmptyStructure
        - MmsValue_delete
        - MmsValue_setElement
        - StringUtils_createStringInBuffer
        - addNamedVariableValue
        - mmsServer_getValue
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:54,17'
          Dst:             mmsServer_getValue
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:62,21'
          Dst:             MmsValue_createEmptyStructure
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:72,17'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:76,25'
          Dst:             addNamedVariableValue
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:81,21'
          Dst:             MmsValue_delete
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:86,17'
          Dst:             MmsValue_setElement
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:92,17'
          Dst:             mmsServer_getValue
    - functionName:    alternateArrayAccess
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_read_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          226
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached:
        - MmsValue_clone
        - MmsValue_createEmptyArray
        - MmsValue_getArraySize
        - MmsValue_getElement
        - MmsValue_isDeletable
        - MmsValue_setDeletable
        - MmsValue_setElement
        - appendErrorToResultList
        - appendValueToResultList
        - mmsServer_getComponentOfArrayElement
        - mmsServer_getLowIndex
        - mmsServer_getNumberOfElements
        - mmsServer_getValue
        - mmsServer_isAccessToArrayComponent
        - mmsServer_isIndexAccess
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:203,6'
          Dst:             mmsServer_isIndexAccess
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:205,18'
          Dst:             mmsServer_getLowIndex
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:207,26'
          Dst:             mmsServer_getNumberOfElements
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:211,26'
          Dst:             mmsServer_getValue
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:219,12'
          Dst:             mmsServer_isAccessToArrayComponent
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:223,40'
          Dst:             MmsValue_getElement
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:226,28'
          Dst:             mmsServer_getComponentOfArrayElement
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:232,20'
          Dst:             MmsValue_getElement
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:239,81'
          Dst:             MmsValue_getArraySize
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:245,29'
          Dst:             MmsValue_createEmptyArray
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:249,25'
          Dst:             MmsValue_setDeletable
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:256,44'
          Dst:             MmsValue_getElement
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:258,34'
          Dst:             MmsValue_isDeletable
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:260,48'
          Dst:             MmsValue_clone
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:264,29'
          Dst:             MmsValue_setElement
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:274,8'
          Dst:             appendValueToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:276,8'
          Dst:             appendErrorToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:279,4'
          Dst:             appendErrorToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:287,9'
          Dst:             appendErrorToResultList
    - functionName:    addComplexValueToResultList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_read_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_add
        - addNamedVariableValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:104,23'
          Dst:             addNamedVariableValue
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:107,9'
          Dst:             LinkedList_add
    - functionName:    getComponent
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_read_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          209
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - StringUtils_appendString
        - getComponent
        - mmsServer_getValue
        - mmsServer_isComponentAccess
        - strlen
        - strncat
        - strncmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:147,9'
          Dst:             mmsServer_isComponentAccess
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:161,27'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:164,26'
          Dst:             strncmp
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:167,29'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:169,29'
          Dst:             StringUtils_appendString
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:172,29'
          Dst:             strncat
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:177,41'
          Dst:             getComponent
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:184,44'
          Dst:             mmsServer_getValue
    - functionName:    strncat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    addNamedVariableToResultList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_read_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          185
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - StringUtils_copyStringMax
        - addComplexValueToResultList
        - alternateArrayAccess
        - appendErrorToResultList
        - appendValueToResultList
        - getComponent
        - mmsServer_getValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:307,17'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:309,35'
          Dst:             getComponent
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:313,21'
          Dst:             appendValueToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:317,21'
          Dst:             appendErrorToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:322,35'
          Dst:             mmsServer_getValue
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:326,21'
          Dst:             appendValueToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:330,21'
          Dst:             addComplexValueToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:339,17'
          Dst:             alternateArrayAccess
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:345,35'
          Dst:             mmsServer_getValue
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:346,17'
          Dst:             appendValueToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:353,17'
          Dst:             appendErrorToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:357,35'
          Dst:             mmsServer_getValue
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:364,21'
          Dst:             appendErrorToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:367,21'
          Dst:             appendValueToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:372,9'
          Dst:             appendErrorToResultList
    - functionName:    isSpecWithResult
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_read_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          35
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsServerConnection_sendReadResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_read_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1002
      functionLinenumberEnd: 1018
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          78
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ByteBuffer_setSize
        - IsoConnection_lock
        - IsoConnection_sendMessage
        - IsoConnection_unlock
        - MmsServer_releaseTransmitBuffer
        - MmsServer_reserveTransmitBuffer
        - encodeReadResponse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:1004,9'
          Dst:             IsoConnection_lock
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:1006,28'
          Dst:             MmsServer_reserveTransmitBuffer
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:1008,5'
          Dst:             ByteBuffer_setSize
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:1010,5'
          Dst:             encodeReadResponse
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:1012,5'
          Dst:             IsoConnection_sendMessage
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:1014,5'
          Dst:             MmsServer_releaseTransmitBuffer
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:1017,9'
          Dst:             IsoConnection_unlock
    - functionName:    handleReadNamedVariableListRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_read_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 800
      functionLinenumberEnd: 931
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          280
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - MmsDevice_getDomain
        - MmsDomain_getNamedVariableList
        - MmsServerConnection_getNamedVariableList
        - MmsServer_getDevice
        - createNamedVariableListResponse
        - isSpecWithResult
        - mmsMsg_copyAsn1IdentifierToStringBuffer
        - mmsMsg_createServiceErrorPdu
        - mmsServer_callVariableListChangedHandler
        - mmsServer_getNamedVariableListWithName
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:807,9'
          Dst:             mmsMsg_copyAsn1IdentifierToStringBuffer
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:810,9'
          Dst:             mmsMsg_copyAsn1IdentifierToStringBuffer
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:820,43'
          Dst:             MmsServer_getDevice
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:820,23'
          Dst:             MmsDevice_getDomain
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:825,4'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:829,37'
          Dst:             MmsDomain_getNamedVariableList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:833,40'
          Dst:             mmsServer_callVariableListChangedHandler
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:837,96'
          Dst:             isSpecWithResult
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:837,21'
          Dst:             createNamedVariableListResponse
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:844,21'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:850,5'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:858,9'
          Dst:             mmsMsg_copyAsn1IdentifierToStringBuffer
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:861,42'
          Dst:             mmsServer_getNamedVariableListWithName
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:865,13'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:869,36'
          Dst:             mmsServer_callVariableListChangedHandler
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:880,92'
          Dst:             isSpecWithResult
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:880,17'
          Dst:             createNamedVariableListResponse
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:886,17'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:896,9'
          Dst:             mmsMsg_copyAsn1IdentifierToStringBuffer
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:899,36'
          Dst:             MmsServerConnection_getNamedVariableList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:903,4'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:907,36'
          Dst:             mmsServer_callVariableListChangedHandler
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:918,92'
          Dst:             isSpecWithResult
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:918,17'
          Dst:             createNamedVariableListResponse
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:924,17'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:930,3'
          Dst:             mmsMsg_createServiceErrorPdu
    - functionName:    handleReadListOfVariablesRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_read_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 562
      functionLinenumberEnd: 683
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          239
      EdgeCount:       49
      CyclomaticComplexity: 13
      functionsReached:
        - LinkedList_create
        - LinkedList_getData
        - LinkedList_getNext
        - MmsDevice_getDomain
        - MmsDomain_getNamedVariable
        - MmsServer_getDevice
        - MmsValue_getDataAccessError
        - MmsValue_getType
        - addNamedVariableToResultList
        - appendErrorToResultList
        - deleteValueList
        - encodeReadResponse
        - isSpecWithResult
        - mmsMsg_copyAsn1IdentifierToStringBuffer
        - mmsMsg_createMmsRejectPdu
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:565,37'
          Dst:             LinkedList_create
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:567,6'
          Dst:             isSpecWithResult
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:588,5'
          Dst:             mmsMsg_copyAsn1IdentifierToStringBuffer
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:591,5'
          Dst:             mmsMsg_copyAsn1IdentifierToStringBuffer
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:594,45'
          Dst:             MmsServer_getDevice
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:594,25'
          Dst:             MmsDevice_getDomain
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:604,6'
          Dst:             appendErrorToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:608,63'
          Dst:             MmsDomain_getNamedVariable
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:611,25'
          Dst:             appendErrorToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:613,25'
          Dst:             addNamedVariableToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:641,17'
          Dst:             appendErrorToResultList
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:649,4'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:656,28'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:660,36'
          Dst:             LinkedList_getData
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:664,14'
          Dst:             MmsValue_getType
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:666,18'
          Dst:             MmsValue_getDataAccessError
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:674,21'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:678,6'
          Dst:             encodeReadResponse
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:682,5'
          Dst:             deleteValueList
    - functionName:    mmsServer_handleReadRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_read_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 941
      functionLinenumberEnd: 998
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          164
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - ByteBuffer_getSize
        - ByteBuffer_setSize
        - MmsServer_lockModel
        - MmsServer_unlockModel
        - ber_decode
        - handleReadListOfVariablesRequest
        - handleReadNamedVariableListRequest
        - mmsMsg_createMmsRejectPdu
        - mmsMsg_createServiceErrorPdu
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:947,27'
          Dst:             ber_decode
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:951,9'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:963,9'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:969,9'
          Dst:             MmsServer_lockModel
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:971,9'
          Dst:             handleReadListOfVariablesRequest
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:973,9'
          Dst:             MmsServer_unlockModel
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:978,9'
          Dst:             MmsServer_lockModel
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:980,9'
          Dst:             handleReadNamedVariableListRequest
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:982,9'
          Dst:             MmsServer_unlockModel
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:987,9'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:990,9'
          Dst:             ByteBuffer_getSize
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:992,9'
          Dst:             ByteBuffer_setSize
        - Src:             'src/mms/iso_mms/server/mms_read_service.c:993,9'
          Dst:             mmsMsg_createServiceErrorPdu
    - functionName:    checkIfVariableExists
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 328
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          114
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - MmsDomain_getNamedVariable
        - MmsVariableSpecification_getNamedVariableRecursive
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:305,4'
          Dst:             MmsDomain_getNamedVariable
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:322,8'
          Dst:             MmsVariableSpecification_getNamedVariableRecursive
    - functionName:    createGetNamedVariableListAttributesResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 705
      functionLinenumberEnd: 779
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          292
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - LinkedList_getNext
        - LinkedList_size
        - Memory_calloc
        - MmsDomain_getName
        - MmsNamedVariableList_getVariableList
        - MmsNamedVariableList_isDeletable
        - StringUtils_copyString
        - der_encode
        - mmsClient_createAlternateAccessComponent
        - mmsClient_createAlternateAccessIndexComponent
        - mmsServer_createConfirmedResponse
        - mmsServer_write_out
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:706,21'
          Dst:             mmsServer_createConfirmedResponse
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:715,34'
          Dst:             MmsNamedVariableList_isDeletable
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:717,25'
          Dst:             MmsNamedVariableList_getVariableList
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:719,22'
          Dst:             LinkedList_size
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:725,3'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:727,24'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:735,5'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:743,30'
          Dst:             MmsDomain_getName
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:746,45'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:749,35'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:752,43'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:755,33'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:760,6'
          Dst:             mmsClient_createAlternateAccessIndexComponent
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:765,6'
          Dst:             mmsClient_createAlternateAccessComponent
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:768,14'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:771,23'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:771,23'
          Dst:             mmsServer_write_out
    - functionName:    mmsServer_handleGetNamedVariableListAttributesRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 787
      functionLinenumberEnd: 949
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         57
      ICount:          415
      EdgeCount:       76
      CyclomaticComplexity: 21
      functionsReached:
        - ByteBuffer_getSize
        - ByteBuffer_setSize
        - MmsDevice_getDomain
        - MmsDomain_getNamedVariableList
        - MmsServerConnection_getNamedVariableList
        - MmsServer_getDevice
        - StringUtils_createStringFromBufferInBufferMax
        - ber_decode
        - createGetNamedVariableListAttributesResponse
        - mmsMsg_createMmsRejectPdu
        - mmsMsg_createServiceErrorPdu
        - mmsServer_callVariableListChangedHandler
        - mmsServer_getNamedVariableListWithName
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:790,24'
          Dst:             ber_decode
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:795,3'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:807,4'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:811,3'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:814,3'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:817,26'
          Dst:             MmsServer_getDevice
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:819,23'
          Dst:             MmsDevice_getDomain
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:823,35'
          Dst:             MmsDomain_getNamedVariableList
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:827,28'
          Dst:             mmsServer_callVariableListChangedHandler
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:831,10'
          Dst:             createGetNamedVariableListAttributesResponse
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:834,7'
          Dst:             ByteBuffer_setSize
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:836,7'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:843,6'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:847,5'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:850,4'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:859,4'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:863,3'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:866,34'
          Dst:             MmsServerConnection_getNamedVariableList
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:870,27'
          Dst:             mmsServer_callVariableListChangedHandler
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:874,9'
          Dst:             createGetNamedVariableListAttributesResponse
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:877,6'
          Dst:             ByteBuffer_setSize
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:879,6'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:886,5'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:890,4'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:899,4'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:903,3'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:906,26'
          Dst:             MmsServer_getDevice
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:908,34'
          Dst:             mmsServer_getNamedVariableListWithName
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:912,27'
          Dst:             mmsServer_callVariableListChangedHandler
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:916,9'
          Dst:             createGetNamedVariableListAttributesResponse
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:919,6'
          Dst:             ByteBuffer_setSize
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:921,6'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:928,5'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:932,4'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:936,3'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:939,6'
          Dst:             ByteBuffer_getSize
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:941,3'
          Dst:             ByteBuffer_setSize
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:942,3'
          Dst:             mmsMsg_createServiceErrorPdu
    - functionName:    mmsServer_callVariableListChangedHandler
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    createDefineNamedVariableListResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 278
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:279,26'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:286,11'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:288,11'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:289,11'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:291,11'
          Dst:             BerEncoder_encodeTL
    - functionName:    createNamedVariableList
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          376
      EdgeCount:       59
      CyclomaticComplexity: 16
      functionsReached:
        - MmsDevice_getDomain
        - MmsNamedVariableListEntry_create
        - MmsNamedVariableList_addVariable
        - MmsNamedVariableList_create
        - MmsNamedVariableList_destroy
        - StringUtils_createStringFromBufferInBufferMax
        - asn_INTEGER2long
        - checkIfVariableExists
        - mmsMsg_getComponentNameFromAlternateAccess
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:353,22'
          Dst:             MmsNamedVariableList_create
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:374,5'
          Dst:             MmsNamedVariableList_destroy
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:388,6'
          Dst:             asn_INTEGER2long
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:395,23'
          Dst:             mmsMsg_getComponentNameFromAlternateAccess
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:410,6'
          Dst:             asn_INTEGER2long
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:414,6'
          Dst:             MmsNamedVariableList_destroy
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:427,4'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:431,4'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:435,31'
          Dst:             MmsDevice_getDomain
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:448,8'
          Dst:             checkIfVariableExists
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:451,7'
          Dst:             MmsNamedVariableListEntry_create
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:453,5'
          Dst:             MmsNamedVariableList_addVariable
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:460,5'
          Dst:             MmsNamedVariableList_destroy
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:468,4'
          Dst:             MmsNamedVariableList_destroy
    - functionName:    mmsServer_handleDefineNamedVariableListRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 486
      functionLinenumberEnd: 695
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         67
      ICount:          501
      EdgeCount:       90
      CyclomaticComplexity: 25
      functionsReached:
        - LinkedList_add
        - LinkedList_size
        - MmsDevice_getDomain
        - MmsDevice_getNamedVariableLists
        - MmsDomain_addNamedVariableList
        - MmsDomain_getNamedVariableList
        - MmsNamedVariableList_destroy
        - MmsServerConnection_addNamedVariableList
        - MmsServerConnection_getNamedVariableList
        - MmsServer_getDevice
        - StringUtils_createStringFromBufferInBufferMax
        - ber_decode
        - createDefineNamedVariableListResponse
        - createNamedVariableList
        - mmsMsg_createMmsRejectPdu
        - mmsMsg_createServiceErrorPdu
        - mmsServer_callVariableListChangedHandler
        - mmsServer_getNamedVariableListWithName
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:493,24'
          Dst:             ber_decode
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:497,3'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:509,3'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:513,22'
          Dst:             MmsServer_getDevice
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:521,4'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:525,3'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:529,23'
          Dst:             MmsDevice_getDomain
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:533,4'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:538,7'
          Dst:             LinkedList_size
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:548,5'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:552,4'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:556,8'
          Dst:             MmsDomain_getNamedVariableList
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:558,5'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:564,46'
          Dst:             createNamedVariableList
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:569,17'
          Dst:             mmsServer_callVariableListChangedHandler
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:573,7'
          Dst:             MmsDomain_addNamedVariableList
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:574,7'
          Dst:             createDefineNamedVariableListResponse
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:578,7'
          Dst:             MmsNamedVariableList_destroy
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:579,7'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:583,6'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:587,4'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:592,7'
          Dst:             LinkedList_size
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:603,5'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:607,4'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:611,8'
          Dst:             MmsServerConnection_getNamedVariableList
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:613,5'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:619,46'
          Dst:             createNamedVariableList
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:624,10'
          Dst:             mmsServer_callVariableListChangedHandler
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:626,7'
          Dst:             MmsServerConnection_addNamedVariableList
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:627,7'
          Dst:             createDefineNamedVariableListResponse
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:631,7'
          Dst:             MmsNamedVariableList_destroy
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:632,7'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:636,6'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:640,4'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:644,29'
          Dst:             MmsDevice_getNamedVariableLists
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:646,7'
          Dst:             LinkedList_size
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:652,5'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:656,4'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:660,47'
          Dst:             MmsDevice_getNamedVariableLists
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:660,8'
          Dst:             mmsServer_getNamedVariableListWithName
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:662,5'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:668,46'
          Dst:             createNamedVariableList
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:673,10'
          Dst:             mmsServer_callVariableListChangedHandler
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:676,7'
          Dst:             LinkedList_add
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:678,7'
          Dst:             createDefineNamedVariableListResponse
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:682,7'
          Dst:             MmsNamedVariableList_destroy
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:683,7'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:690,3'
          Dst:             mmsMsg_createServiceErrorPdu
    - functionName:    createServiceErrorDeleteVariableLists
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_encodeUInt32WithTL
        - mmsServer_createServiceErrorPduWithServiceSpecificInfo
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:110,13'
          Dst:             BerEncoder_encodeUInt32WithTL
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:112,2'
          Dst:             mmsServer_createServiceErrorPduWithServiceSpecificInfo
    - functionName:    createDeleteNamedVariableListResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          101
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:73,26'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:76,8'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:79,8'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:88,11'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:90,11'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:91,11'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:93,11'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:95,11'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:96,11'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:98,11'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:99,11'
          Dst:             BerEncoder_encodeUInt32
    - functionName:    mmsServer_handleDeleteNamedVariableListRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_named_variable_list_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          448
      EdgeCount:       79
      CyclomaticComplexity: 21
      functionsReached:
        - MmsDevice_getDomain
        - MmsDomain_deleteNamedVariableList
        - MmsDomain_getNamedVariableList
        - MmsNamedVariableList_isDeletable
        - MmsServerConnection_deleteNamedVariableList
        - MmsServerConnection_getNamedVariableList
        - MmsServer_getDevice
        - asn_INTEGER2long
        - ber_decode
        - createDeleteNamedVariableListResponse
        - createServiceErrorDeleteVariableLists
        - mmsMsg_copyAsn1IdentifierToStringBuffer
        - mmsMsg_createMmsRejectPdu
        - mmsMsg_createServiceErrorPdu
        - mmsServer_callVariableListChangedHandler
        - mmsServer_deleteVariableList
        - mmsServer_getNamedVariableListWithName
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:127,24'
          Dst:             ber_decode
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:131,3'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:143,9'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:149,9'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:156,3'
          Dst:             asn_INTEGER2long
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:158,22'
          Dst:             MmsServer_getDevice
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:178,5'
          Dst:             mmsMsg_copyAsn1IdentifierToStringBuffer
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:181,5'
          Dst:             mmsMsg_copyAsn1IdentifierToStringBuffer
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:184,25'
          Dst:             MmsDevice_getDomain
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:188,42'
          Dst:             MmsDomain_getNamedVariableList
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:194,11'
          Dst:             MmsNamedVariableList_isDeletable
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:196,31'
          Dst:             mmsServer_callVariableListChangedHandler
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:200,9'
          Dst:             MmsDomain_deleteNamedVariableList
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:213,5'
          Dst:             mmsMsg_copyAsn1IdentifierToStringBuffer
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:216,41'
          Dst:             MmsServerConnection_getNamedVariableList
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:222,29'
          Dst:             mmsServer_callVariableListChangedHandler
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:227,7'
          Dst:             MmsServerConnection_deleteNamedVariableList
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:237,5'
          Dst:             mmsMsg_copyAsn1IdentifierToStringBuffer
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:240,41'
          Dst:             mmsServer_getNamedVariableListWithName
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:246,29'
          Dst:             mmsServer_callVariableListChangedHandler
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:251,7'
          Dst:             mmsServer_deleteVariableList
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:260,4'
          Dst:             createDeleteNamedVariableListResponse
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:262,4'
          Dst:             createServiceErrorDeleteVariableLists
        - Src:             'src/mms/iso_mms/server/mms_named_variable_list_service.c:266,3'
          Dst:             mmsMsg_createServiceErrorPdu
    - functionName:    createWriteNamedVariableListResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_write_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 414
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          191
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - LinkedList_getData
        - LinkedList_getNext
        - LinkedList_size
        - MmsNamedVariableListEntry_getDomain
        - MmsNamedVariableListEntry_getVariableName
        - MmsNamedVariableList_getVariableList
        - MmsValue_delete
        - MmsValue_equalTypes
        - mmsMsg_createMmsRejectPdu
        - mmsMsg_parseDataElement
        - mmsServer_createMmsWriteResponse
        - mmsServer_getValue
        - mmsServer_setValue
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:349,28'
          Dst:             MmsNamedVariableList_getVariableList
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:351,30'
          Dst:             LinkedList_size
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:355,9'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:362,9'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:374,20'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:376,82'
          Dst:             LinkedList_getData
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:378,37'
          Dst:             MmsNamedVariableListEntry_getDomain
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:379,30'
          Dst:             MmsNamedVariableListEntry_getVariableName
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:381,30'
          Dst:             mmsServer_getValue
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:385,30'
          Dst:             mmsMsg_parseDataElement
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:391,18'
          Dst:             MmsValue_equalTypes
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:393,13'
          Dst:             MmsValue_delete
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:399,17'
          Dst:             mmsServer_setValue
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:406,13'
          Dst:             MmsValue_delete
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:374,78'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:413,9'
          Dst:             mmsServer_createMmsWriteResponse
    - functionName:    mmsServer_createMmsWriteResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_write_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          198
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:44,31'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:58,34'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:70,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:73,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:74,14'
          Dst:             BerEncoder_encodeUInt32
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:76,14'
          Dst:             BerEncoder_encodeTL
    - functionName:    getComponent
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_write_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 599
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          217
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - StringUtils_appendString
        - getComponent
        - mmsServer_isComponentAccess
        - strlen
        - strncat
        - strncmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:553,9'
          Dst:             mmsServer_isComponentAccess
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:566,26'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:568,26'
          Dst:             strncmp
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:571,29'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:573,29'
          Dst:             StringUtils_appendString
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:576,29'
          Dst:             strncat
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:582,37'
          Dst:             getComponent
    - functionName:    handleWriteNamedVariableListRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_write_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 419
      functionLinenumberEnd: 545
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          249
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - MmsDevice_getDomain
        - MmsDomain_getNamedVariableList
        - MmsServerConnection_getNamedVariableList
        - MmsServer_getDevice
        - createWriteNamedVariableListResponse
        - mmsMsg_copyAsn1IdentifierToStringBuffer
        - mmsMsg_createServiceErrorPdu
        - mmsServer_callVariableListChangedHandler
        - mmsServer_getNamedVariableListWithName
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:425,9'
          Dst:             mmsMsg_copyAsn1IdentifierToStringBuffer
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:429,9'
          Dst:             mmsMsg_copyAsn1IdentifierToStringBuffer
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:433,49'
          Dst:             MmsServer_getDevice
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:433,29'
          Dst:             MmsDevice_getDomain
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:439,13'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:445,46'
          Dst:             MmsDomain_getNamedVariableList
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:449,40'
          Dst:             mmsServer_callVariableListChangedHandler
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:454,21'
          Dst:             createWriteNamedVariableListResponse
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:461,21'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:468,17'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:476,9'
          Dst:             mmsMsg_copyAsn1IdentifierToStringBuffer
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:480,13'
          Dst:             mmsServer_getNamedVariableListWithName
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:484,36'
          Dst:             mmsServer_callVariableListChangedHandler
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:489,17'
          Dst:             createWriteNamedVariableListResponse
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:497,17'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:504,13'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:512,9'
          Dst:             mmsMsg_copyAsn1IdentifierToStringBuffer
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:515,42'
          Dst:             MmsServerConnection_getNamedVariableList
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:519,36'
          Dst:             mmsServer_callVariableListChangedHandler
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:524,17'
          Dst:             createWriteNamedVariableListResponse
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:532,17'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:539,13'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:544,9'
          Dst:             mmsMsg_createServiceErrorPdu
    - functionName:    mmsServer_handleWriteRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_write_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 605
      functionLinenumberEnd: 908
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         111
      ICount:          754
      EdgeCount:       152
      CyclomaticComplexity: 43
      functionsReached:
        - MmsDevice_getDomain
        - MmsDomain_getNamedVariable
        - MmsServer_getDevice
        - MmsServer_getValueFromCache
        - MmsServer_lockModel
        - MmsServer_unlockModel
        - MmsValue_delete
        - MmsValue_getElement
        - MmsValue_getType
        - MmsValue_update
        - MmsVariableSpecification_isValueOfType
        - ber_decode
        - getComponent
        - handleWriteNamedVariableListRequest
        - mmsMsg_copyAsn1IdentifierToStringBuffer
        - mmsMsg_createMmsRejectPdu
        - mmsMsg_parseDataElement
        - mmsServer_createMmsWriteResponse
        - mmsServer_getComponentOfArrayElement
        - mmsServer_getLowIndex
        - mmsServer_getNumberOfElements
        - mmsServer_isAccessToArrayComponent
        - mmsServer_isComponentAccess
        - mmsServer_isIndexAccess
        - mmsServer_setValue
        - mmsServer_setValueEx
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:613,12'
          Dst:             ber_decode
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:617,9'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:628,9'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:632,5'
          Dst:             MmsServer_lockModel
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:636,9'
          Dst:             handleWriteNamedVariableListRequest
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:645,13'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:651,13'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:657,13'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:681,33'
          Dst:             MmsServer_getDevice
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:694,17'
          Dst:             mmsMsg_copyAsn1IdentifierToStringBuffer
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:696,26'
          Dst:             MmsDevice_getDomain
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:706,17'
          Dst:             mmsMsg_copyAsn1IdentifierToStringBuffer
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:708,28'
          Dst:             MmsDomain_getNamedVariable
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:738,59'
          Dst:             mmsServer_isComponentAccess
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:744,55'
          Dst:             mmsServer_isIndexAccess
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:759,31'
          Dst:             mmsMsg_parseDataElement
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:772,21'
          Dst:             mmsServer_isIndexAccess
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:774,45'
          Dst:             MmsServer_getValueFromCache
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:782,33'
          Dst:             mmsServer_getLowIndex
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:783,44'
          Dst:             mmsServer_getNumberOfElements
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:787,50'
          Dst:             MmsValue_getElement
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:795,29'
          Dst:             mmsServer_isAccessToArrayComponent
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:797,71'
          Dst:             MmsDomain_getNamedVariable
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:804,48'
          Dst:             mmsServer_getComponentOfArrayElement
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:814,52'
          Dst:             mmsServer_setValueEx
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:822,48'
          Dst:             mmsServer_setValueEx
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:829,29'
          Dst:             MmsValue_getType
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:839,52'
          Dst:             MmsValue_getElement
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:840,54'
          Dst:             MmsValue_getElement
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:848,33'
          Dst:             MmsValue_update
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:859,26'
          Dst:             mmsServer_isComponentAccess
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:861,32'
          Dst:             getComponent
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:877,17'
          Dst:             MmsVariableSpecification_isValueOfType
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:883,32'
          Dst:             mmsServer_setValue
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:890,13'
          Dst:             MmsValue_delete
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:894,13'
          Dst:             mmsServer_createMmsWriteResponse
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:899,9'
          Dst:             mmsMsg_createMmsRejectPdu
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:905,5'
          Dst:             MmsServer_unlockModel
    - functionName:    MmsServerConnection_sendWriteResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_write_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          77
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ByteBuffer_setSize
        - IsoConnection_lock
        - IsoConnection_sendMessage
        - IsoConnection_unlock
        - MmsServer_releaseTransmitBuffer
        - MmsServer_reserveTransmitBuffer
        - mmsServer_createMmsWriteResponse
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:101,9'
          Dst:             IsoConnection_lock
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:103,28'
          Dst:             MmsServer_reserveTransmitBuffer
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:105,5'
          Dst:             ByteBuffer_setSize
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:107,5'
          Dst:             mmsServer_createMmsWriteResponse
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:109,5'
          Dst:             IsoConnection_sendMessage
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:111,5'
          Dst:             MmsServer_releaseTransmitBuffer
        - Src:             'src/mms/iso_mms/server/mms_write_service.c:114,9'
          Dst:             IsoConnection_unlock
    - functionName:    freeTypeSpecRecursive
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_get_var_access_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          150
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - Memory_free
        - freeTypeSpecRecursive
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:155,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:156,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:157,13'
          Dst:             freeTypeSpecRecursive
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:158,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:159,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:162,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:165,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:166,9'
          Dst:             freeTypeSpecRecursive
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:167,9'
          Dst:             Memory_free
    - functionName:    deleteVariableAccessAttributesResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_get_var_access_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          191
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - Memory_free
        - freeTypeSpecRecursive
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:180,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:181,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:184,13'
          Dst:             freeTypeSpecRecursive
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:185,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:186,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:189,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:196,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:199,9'
          Dst:             freeTypeSpecRecursive
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:201,9'
          Dst:             Memory_free
    - functionName:    createTypeSpecification
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_get_var_access_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          386
      EdgeCount:       32
      CyclomaticComplexity: 5
      functionsReached:
        - Memory_calloc
        - StringUtils_copyString
        - asn_long2INTEGER
        - createTypeSpecification
        - strlen
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/server/mms_get_var_access_service.c:88,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:42,9'
          Dst:             asn_long2INTEGER
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:46,69'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:48,9'
          Dst:             createTypeSpecification
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:61,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:68,42'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:71,37'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:74,32'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:77,21'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:80,44'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:82,13'
          Dst:             createTypeSpecification
    - functionName:    createVariableAccessAttributesResponse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_get_var_access_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          142
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - MmsDevice_getDomain
        - MmsDomain_getNamedVariable
        - MmsServer_getDevice
        - createTypeSpecification
        - deleteVariableAccessAttributesResponse
        - der_encode
        - mmsMsg_createServiceErrorPdu
        - mmsServer_checkListAccess
        - mmsServer_createConfirmedResponse
        - mmsServer_write_out
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:215,25'
          Dst:             MmsServer_getDevice
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:222,18'
          Dst:             MmsDevice_getDomain
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:227,13'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:232,25'
          Dst:             MmsDomain_getNamedVariable
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:242,9'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:248,26'
          Dst:             mmsServer_checkListAccess
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:254,9'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:260,24'
          Dst:             mmsServer_createConfirmedResponse
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:272,5'
          Dst:             createTypeSpecification
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:275,13'
          Dst:             der_encode
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:275,13'
          Dst:             mmsServer_write_out
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:283,9'
          Dst:             mmsMsg_createServiceErrorPdu
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:289,5'
          Dst:             deleteVariableAccessAttributesResponse
    - functionName:    mmsServer_handleGetVariableAccessAttributesRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_get_var_access_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          147
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ByteBuffer_getSize
        - ByteBuffer_setSize
        - Memory_free
        - StringUtils_createStringFromBuffer
        - ber_decode
        - createVariableAccessAttributesResponse
        - mmsMsg_createServiceErrorPdu
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:310,12'
          Dst:             ber_decode
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:322,37'
          Dst:             StringUtils_createStringFromBuffer
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:323,35'
          Dst:             StringUtils_createStringFromBuffer
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:328,17'
          Dst:             createVariableAccessAttributesResponse
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:330,17'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:331,17'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:364,9'
          Dst:             ByteBuffer_getSize
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:366,9'
          Dst:             ByteBuffer_setSize
        - Src:             'src/mms/iso_mms/server/mms_get_var_access_service.c:367,9'
          Dst:             mmsMsg_createServiceErrorPdu
    - functionName:    parseOptions
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 466
      functionLinenumberEnd: 563
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          260
      EdgeCount:       53
      CyclomaticComplexity: 12
      functionsReached:
        - CotpConnection_setTpduSize
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/mms/iso_cotp/cotp.c:489,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_cotp/cotp.c:505,17'
          Dst:             CotpConnection_setTpduSize
    - functionName:    CotpConnection_setTpduSize
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 614
      functionLinenumberEnd: 627
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getUint8
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getUint16
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    addPayloadToBuffer
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 700
      functionLinenumberEnd: 720
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parseDataTpdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 684
      functionLinenumberEnd: 696
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - getUint8
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_cotp/cotp.c:688,27'
          Dst:             getUint8
    - functionName:    parseConnectConfirmTpdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 672
      functionLinenumberEnd: 680
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - getUint16
        - getUint8
        - parseOptions
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_cotp/cotp.c:676,23'
          Dst:             getUint16
        - Src:             'src/mms/iso_cotp/cotp.c:677,27'
          Dst:             getUint8
        - Src:             'src/mms/iso_cotp/cotp.c:679,12'
          Dst:             parseOptions
    - functionName:    parseConnectRequestTpdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 660
      functionLinenumberEnd: 668
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - getUint16
        - getUint8
        - parseOptions
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_cotp/cotp.c:664,23'
          Dst:             getUint16
        - Src:             'src/mms/iso_cotp/cotp.c:665,27'
          Dst:             getUint8
        - Src:             'src/mms/iso_cotp/cotp.c:667,12'
          Dst:             parseOptions
    - functionName:    writeToSocket
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Socket_write
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_cotp/cotp.c:175,12'
          Dst:             Socket_write
    - functionName:    readFromSocket
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 791
      functionLinenumberEnd: 822
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          48
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - Handleset_waitReady
        - Socket_read
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/mms/iso_cotp/cotp.c:810,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_cotp/cotp.c:810,13'
          Dst:             Handleset_waitReady
        - Src:             'src/mms/iso_cotp/cotp.c:820,12'
          Dst:             Socket_read
    - functionName:    CotpConnection_readToTpktBuffer
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 833
      functionLinenumberEnd: 927
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         36
      ICount:          245
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - flushBuffer
        - readFromSocket
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_cotp/cotp.c:842,13'
          Dst:             flushBuffer
        - Src:             'src/mms/iso_cotp/cotp.c:853,21'
          Dst:             readFromSocket
        - Src:             'src/mms/iso_cotp/cotp.c:894,17'
          Dst:             readFromSocket
    - functionName:    flushBuffer
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          120
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - writeToSocket
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_cotp/cotp.c:184,25'
          Dst:             writeToSocket
    - functionName:    CotpConnection_flushBuffer
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 826
      functionLinenumberEnd: 829
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flushBuffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_cotp/cotp.c:828,9'
          Dst:             flushBuffer
    - functionName:    parseCotpMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 724
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          135
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - addPayloadToBuffer
        - parseConnectConfirmTpdu
        - parseConnectRequestTpdu
        - parseDataTpdu
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_cotp/cotp.c:743,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_cotp/cotp.c:745,13'
          Dst:             parseConnectRequestTpdu
        - Src:             'src/mms/iso_cotp/cotp.c:750,13'
          Dst:             parseConnectConfirmTpdu
        - Src:             'src/mms/iso_cotp/cotp.c:755,13'
          Dst:             parseDataTpdu
        - Src:             'src/mms/iso_cotp/cotp.c:757,17'
          Dst:             addPayloadToBuffer
    - functionName:    CotpConnection_parseIncomingMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 780
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parseCotpMessage
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_cotp/cotp.c:775,33'
          Dst:             parseCotpMessage
    - functionName:    CotpConnection_getLocalRef
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 643
      functionLinenumberEnd: 644
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CotpConnection_getRemoteRef
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 638
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CotpConnection_getPayload
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 631
      functionLinenumberEnd: 632
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CotpConnection_resetPayload
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 785
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CotpConnection_init
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 569
      functionLinenumberEnd: 604
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          103
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - CotpConnection_resetPayload
        - CotpConnection_setTpduSize
        - Handleset_addSocket
        - Handleset_new
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_cotp/cotp.c:572,23'
          Dst:             Handleset_new
        - Src:             'src/mms/iso_cotp/cotp.c:573,5'
          Dst:             Handleset_addSocket
        - Src:             'src/mms/iso_cotp/cotp.c:592,5'
          Dst:             CotpConnection_resetPayload
        - Src:             'src/mms/iso_cotp/cotp.c:595,5'
          Dst:             CotpConnection_setTpduSize
    - functionName:    writeStaticConnectResponseHeader
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          68
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CotpConnection_sendConnectionResponseMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 443
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          60
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - allocateWriteBuffer
        - getOptionsLength
        - sendBuffer
        - writeOptions
        - writeRfc1006Header
        - writeStaticConnectResponseHeader
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_cotp/cotp.c:444,5'
          Dst:             allocateWriteBuffer
        - Src:             'src/mms/iso_cotp/cotp.c:446,25'
          Dst:             getOptionsLength
        - Src:             'src/mms/iso_cotp/cotp.c:452,5'
          Dst:             writeRfc1006Header
        - Src:             'src/mms/iso_cotp/cotp.c:454,5'
          Dst:             writeStaticConnectResponseHeader
        - Src:             'src/mms/iso_cotp/cotp.c:456,5'
          Dst:             writeOptions
        - Src:             'src/mms/iso_cotp/cotp.c:458,9'
          Dst:             sendBuffer
    - functionName:    allocateWriteBuffer
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 392
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ByteBuffer_create
        - CotpConnection_getTpduSize
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_cotp/cotp.c:391,17'
          Dst:             CotpConnection_getTpduSize
        - Src:             'src/mms/iso_cotp/cotp.c:390,29'
          Dst:             ByteBuffer_create
    - functionName:    getOptionsLength
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          82
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    writeRfc1006Header
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    writeOptions
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          211
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sendBuffer
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          148
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - ByteBuffer_getBuffer
        - ByteBuffer_getSize
        - ByteBuffer_setSize
        - flushBuffer
        - writeToSocket
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_cotp/cotp.c:218,25'
          Dst:             ByteBuffer_getSize
        - Src:             'src/mms/iso_cotp/cotp.c:219,23'
          Dst:             ByteBuffer_getBuffer
        - Src:             'src/mms/iso_cotp/cotp.c:223,9'
          Dst:             flushBuffer
        - Src:             'src/mms/iso_cotp/cotp.c:232,21'
          Dst:             writeToSocket
        - Src:             'src/mms/iso_cotp/cotp.c:263,5'
          Dst:             ByteBuffer_setSize
    - functionName:    CotpConnection_getTpduSize
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 608
      functionLinenumberEnd: 609
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CotpConnection_sendConnectionRequestMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          117
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - allocateWriteBuffer
        - getOptionsLength
        - sendBuffer
        - writeOptions
        - writeRfc1006Header
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_cotp/cotp.c:398,5'
          Dst:             allocateWriteBuffer
        - Src:             'src/mms/iso_cotp/cotp.c:403,27'
          Dst:             getOptionsLength
        - Src:             'src/mms/iso_cotp/cotp.c:412,5'
          Dst:             writeRfc1006Header
        - Src:             'src/mms/iso_cotp/cotp.c:433,5'
          Dst:             writeOptions
        - Src:             'src/mms/iso_cotp/cotp.c:435,9'
          Dst:             sendBuffer
    - functionName:    writeDataTpduHeader
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          44
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CotpConnection_sendDataMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_cotp/cotp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          260
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - CotpConnection_getTpduSize
        - flushBuffer
        - sendBuffer
        - writeDataTpduHeader
        - writeRfc1006Header
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_cotp/cotp.c:276,31'
          Dst:             CotpConnection_getTpduSize
        - Src:             'src/mms/iso_cotp/cotp.c:291,9'
          Dst:             flushBuffer
        - Src:             'src/mms/iso_cotp/cotp.c:332,9'
          Dst:             writeRfc1006Header
        - Src:             'src/mms/iso_cotp/cotp.c:334,9'
          Dst:             writeDataTpduHeader
        - Src:             'src/mms/iso_cotp/cotp.c:365,14'
          Dst:             sendBuffer
    - functionName:    parsePCDLEntry
      functionSourceFile: '/src/libiec61850/src/mms/iso_presentation/iso_presentation.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 376
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          213
      EdgeCount:       46
      CyclomaticComplexity: 11
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
        - memcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_presentation/iso_presentation.c:304,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_presentation/iso_presentation.c:295,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_presentation/iso_presentation.c:306,25'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_presentation/iso_presentation.c:316,21'
          Dst:             memcmp
        - Src:             'src/mms/iso_presentation/iso_presentation.c:321,21'
          Dst:             memcmp
    - functionName:    parseFullyEncodedData
      functionSourceFile: '/src/libiec61850/src/mms/iso_presentation/iso_presentation.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          183
      EdgeCount:       29
      CyclomaticComplexity: 7
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_presentation/iso_presentation.c:231,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_presentation/iso_presentation.c:206,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_presentation/iso_presentation.c:222,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_presentation/iso_presentation.c:237,40'
          Dst:             BerDecoder_decodeUint32
    - functionName:    parsePresentationContextDefinitionList
      functionSourceFile: '/src/libiec61850/src/mms/iso_presentation/iso_presentation.c'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 412
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          99
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - BerDecoder_decodeLength
        - parsePCDLEntry
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_presentation/iso_presentation.c:392,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_presentation/iso_presentation.c:388,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_presentation/iso_presentation.c:397,22'
          Dst:             parsePCDLEntry
    - functionName:    encodeAcceptBer
      functionSourceFile: '/src/libiec61850/src/mms/iso_presentation/iso_presentation.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_encodeTL
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_presentation/iso_presentation.c:49,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:50,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:52,14'
          Dst:             BerEncoder_encodeTL
    - functionName:    IsoPresentation_createCpaMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_presentation/iso_presentation.c'
      linkageType:     InternalLinkage
      functionLinenumber: 932
      functionLinenumberEnd: 979
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          128
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeTL
        - encodeAcceptBer
        - encodeUserData
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_presentation/iso_presentation.c:944,25'
          Dst:             encodeUserData
        - Src:             'src/mms/iso_presentation/iso_presentation.c:948,22'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_presentation/iso_presentation.c:953,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:956,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:957,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:961,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:964,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:969,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:970,14'
          Dst:             encodeAcceptBer
        - Src:             'src/mms/iso_presentation/iso_presentation.c:971,14'
          Dst:             encodeAcceptBer
        - Src:             'src/mms/iso_presentation/iso_presentation.c:974,14'
          Dst:             encodeUserData
    - functionName:    encodeUserData
      functionSourceFile: '/src/libiec61850/src/mms/iso_presentation/iso_presentation.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - bool
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          101
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeTL
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_presentation/iso_presentation.c:69,29'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_presentation/iso_presentation.c:73,31'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_presentation/iso_presentation.c:78,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:79,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:82,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:86,18'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:93,34'
          Dst:             BerEncoder_determineLengthSize
    - functionName:    IsoPresentation_createAbortUserMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_presentation/iso_presentation.c'
      linkageType:     InternalLinkage
      functionLinenumber: 912
      functionLinenumberEnd: 928
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          63
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_encodeTL
        - encodeUserData
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_presentation/iso_presentation.c:915,22'
          Dst:             encodeUserData
        - Src:             'src/mms/iso_presentation/iso_presentation.c:920,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:923,14'
          Dst:             encodeUserData
    - functionName:    createConnectPdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_presentation/iso_presentation.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          304
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeTL
        - encodeUserData
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_presentation/iso_presentation.c:119,25'
          Dst:             encodeUserData
        - Src:             'src/mms/iso_presentation/iso_presentation.c:125,26'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_presentation/iso_presentation.c:130,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:133,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:134,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:138,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:141,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:146,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:151,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:154,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:156,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:159,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:163,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:164,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:169,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:171,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:174,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:178,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:179,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:184,14'
          Dst:             encodeUserData
    - functionName:    IsoPresentation_createConnectPdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_presentation/iso_presentation.c'
      linkageType:     InternalLinkage
      functionLinenumber: 902
      functionLinenumberEnd: 908
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - createConnectPdu
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_presentation/iso_presentation.c:907,5'
          Dst:             createConnectPdu
    - functionName:    IsoPresentation_parseConnect
      functionSourceFile: '/src/libiec61850/src/mms/iso_presentation/iso_presentation.c'
      linkageType:     InternalLinkage
      functionLinenumber: 785
      functionLinenumberEnd: 897
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         32
      ICount:          211
      EdgeCount:       41
      CyclomaticComplexity: 11
      functionsReached:
        - BerDecoder_decodeLength
        - BerDecoder_decodeUint32
        - parseNormalModeParameters
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_presentation/iso_presentation.c:835,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_presentation/iso_presentation.c:810,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_presentation/iso_presentation.c:826,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_presentation/iso_presentation.c:846,26'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_presentation/iso_presentation.c:855,41'
          Dst:             BerDecoder_decodeUint32
        - Src:             'src/mms/iso_presentation/iso_presentation.c:864,22'
          Dst:             parseNormalModeParameters
    - functionName:    parseNormalModeParameters
      functionSourceFile: '/src/libiec61850/src/mms/iso_presentation/iso_presentation.c'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          283
      EdgeCount:       54
      CyclomaticComplexity: 12
      functionsReached:
        - BerDecoder_decodeLength
        - parseFullyEncodedData
        - parsePresentationContextDefinitionList
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/mms/iso_presentation/iso_presentation.c:438,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_presentation/iso_presentation.c:429,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_presentation/iso_presentation.c:490,22'
          Dst:             parsePresentationContextDefinitionList
        - Src:             'src/mms/iso_presentation/iso_presentation.c:506,22'
          Dst:             parseFullyEncodedData
    - functionName:    IsoPresentation_parseUserData
      functionSourceFile: '/src/libiec61850/src/mms/iso_presentation/iso_presentation.c'
      linkageType:     InternalLinkage
      functionLinenumber: 682
      functionLinenumberEnd: 781
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          256
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - BerDecoder_decodeLength
        - ByteBuffer_wrap
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/mms/iso_presentation/iso_presentation.c:732,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_presentation/iso_presentation.c:697,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_presentation/iso_presentation.c:709,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_presentation/iso_presentation.c:723,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_presentation/iso_presentation.c:772,17'
          Dst:             ByteBuffer_wrap
    - functionName:    IsoPresentation_createUserDataACSE
      functionSourceFile: '/src/libiec61850/src/mms/iso_presentation/iso_presentation.c'
      linkageType:     InternalLinkage
      functionLinenumber: 652
      functionLinenumberEnd: 678
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          102
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeTL
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_presentation/iso_presentation.c:658,35'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_presentation/iso_presentation.c:662,34'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_presentation/iso_presentation.c:665,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:667,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:673,14'
          Dst:             BerEncoder_encodeTL
    - functionName:    IsoPresentation_createUserData
      functionSourceFile: '/src/libiec61850/src/mms/iso_presentation/iso_presentation.c'
      linkageType:     InternalLinkage
      functionLinenumber: 622
      functionLinenumberEnd: 648
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          102
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeTL
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_presentation/iso_presentation.c:628,35'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_presentation/iso_presentation.c:632,34'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_presentation/iso_presentation.c:635,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:637,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_presentation/iso_presentation.c:643,14'
          Dst:             BerEncoder_encodeTL
    - functionName:    IsoPresentation_init
      functionSourceFile: '/src/libiec61850/src/mms/iso_presentation/iso_presentation.c'
      linkageType:     InternalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 618
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoPresentation_parseAcceptMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_presentation/iso_presentation.c'
      linkageType:     InternalLinkage
      functionLinenumber: 540
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          151
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached:
        - BerDecoder_decodeLength
        - parseNormalModeParameters
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_presentation/iso_presentation.c:586,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_presentation/iso_presentation.c:564,14'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_presentation/iso_presentation.c:577,18'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/mms/iso_presentation/iso_presentation.c:591,22'
          Dst:             parseNormalModeParameters
    - functionName:    getIndefiniteLength
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          158
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - BerDecoder_decodeLengthRecursive
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_decode.c:59,29'
          Dst:             BerDecoder_decodeLengthRecursive
    - functionName:    BerDecoder_decodeLengthRecursive
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          180
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - getIndefiniteLength
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_decode.c:87,23'
          Dst:             getIndefiniteLength
    - functionName:    BerDecoder_decodeOID
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 256
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          177
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BerDecoder_decodeBoolean
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BerDecoder_decodeDouble
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          45
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BerDecoder_decodeFloat
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      float
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          45
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BerDecoder_decodeInt32
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          92
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BerDecoder_decodeUint32
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          55
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    30
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BerDecoder_decodeString
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_malloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_decode.c:138,28'
          Dst:             Memory_malloc
    - functionName:    BerDecoder_decodeLength
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerDecoder_decodeLengthRecursive
      functionUses:    94
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_decode.c:129,12'
          Dst:             BerDecoder_decodeLengthRecursive
    - functionName:    Asn1PrimitiveValue_destroy
      functionSourceFile: '/src/libiec61850/src/mms/asn1/asn1_ber_primitive_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/asn1_ber_primitive_value.c:107,9'
          Dst:             Memory_free
        - Src:             'src/mms/asn1/asn1_ber_primitive_value.c:108,9'
          Dst:             Memory_free
    - functionName:    Asn1PrimitiveValue_getMaxSize
      functionSourceFile: '/src/libiec61850/src/mms/asn1/asn1_ber_primitive_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Asn1PrimitiveValue_getSize
      functionSourceFile: '/src/libiec61850/src/mms/asn1/asn1_ber_primitive_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Asn1PrimitivaValue_compare
      functionSourceFile: '/src/libiec61850/src/mms/asn1/asn1_ber_primitive_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/asn1_ber_primitive_value.c:81,13'
          Dst:             memcmp
    - functionName:    Asn1PrimitiveValue_clone
      functionSourceFile: '/src/libiec61850/src/mms/asn1/asn1_ber_primitive_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_free
        - Memory_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/asn1_ber_primitive_value.c:53,54'
          Dst:             Memory_malloc
        - Src:             'src/mms/asn1/asn1_ber_primitive_value.c:60,35'
          Dst:             Memory_malloc
        - Src:             'src/mms/asn1/asn1_ber_primitive_value.c:68,13'
          Dst:             Memory_free
    - functionName:    Asn1PrimitiveValue_create
      functionSourceFile: '/src/libiec61850/src/mms/asn1/asn1_ber_primitive_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_calloc
        - Memory_free
        - Memory_malloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/asn1_ber_primitive_value.c:31,53'
          Dst:             Memory_malloc
        - Src:             'src/mms/asn1/asn1_ber_primitive_value.c:38,34'
          Dst:             Memory_calloc
        - Src:             'src/mms/asn1/asn1_ber_primitive_value.c:42,13'
          Dst:             Memory_free
    - functionName:    BerEncoder_encodeOIDToBuffer
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 518
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          215
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - atoi
        - strchr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_encoder.c:442,13'
          Dst:             atoi
        - Src:             'src/mms/asn1/ber_encoder.c:446,29'
          Dst:             strchr
        - Src:             'src/mms/asn1/ber_encoder.c:451,21'
          Dst:             strchr
        - Src:             'src/mms/asn1/ber_encoder.c:457,21'
          Dst:             strchr
        - Src:             'src/mms/asn1/ber_encoder.c:463,13'
          Dst:             atoi
        - Src:             'src/mms/asn1/ber_encoder.c:476,21'
          Dst:             strchr
        - Src:             'src/mms/asn1/ber_encoder.c:481,15'
          Dst:             atoi
    - functionName:    atoi
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BerEncoder_determineEncodedStringSize
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 420
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BerEncoder_determineLengthSize
        - strlen
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_encoder.c:425,22'
          Dst:             strlen
        - Src:             'src/mms/asn1/ber_encoder.c:427,17'
          Dst:             BerEncoder_determineLengthSize
    - functionName:    BerEncoder_determineLengthSize
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          40
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    113
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BerEncoder_Int32determineEncodedSize
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 384
      functionLinenumberEnd: 402
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          54
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - BerEncoder_compressInteger
        - BerEncoder_revertByteOrder
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_encoder.c:397,5'
          Dst:             BerEncoder_revertByteOrder
        - Src:             'src/mms/asn1/ber_encoder.c:400,16'
          Dst:             BerEncoder_compressInteger
    - functionName:    BerEncoder_revertByteOrder
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          57
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BerEncoder_compressInteger
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          140
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BerEncoder_UInt32determineEncodedSize
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          54
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - BerEncoder_compressInteger
        - BerEncoder_revertByteOrder
      functionUses:    50
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_encoder.c:374,5'
          Dst:             BerEncoder_revertByteOrder
        - Src:             'src/mms/asn1/ber_encoder.c:377,16'
          Dst:             BerEncoder_compressInteger
    - functionName:    BerEncoder_encodeFloat
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - char
        - char
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          76
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - BerEncoder_revertByteOrder
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_encoder.c:351,5'
          Dst:             BerEncoder_revertByteOrder
    - functionName:    BerEncoder_encodeUInt32WithTL
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - char
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          103
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - BerEncoder_compressInteger
        - BerEncoder_revertByteOrder
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_encoder.c:319,5'
          Dst:             BerEncoder_revertByteOrder
        - Src:             'src/mms/asn1/ber_encoder.c:322,16'
          Dst:             BerEncoder_compressInteger
    - functionName:    BerEncoder_encodeInt32
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          79
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - BerEncoder_compressInteger
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_encoder.c:294,16'
          Dst:             BerEncoder_compressInteger
    - functionName:    BerEncoder_encodeUInt32
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          84
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - BerEncoder_compressInteger
        - BerEncoder_revertByteOrder
      functionUses:    38
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_encoder.c:261,5'
          Dst:             BerEncoder_revertByteOrder
        - Src:             'src/mms/asn1/ber_encoder.c:264,16'
          Dst:             BerEncoder_compressInteger
    - functionName:    BerEncoder_determineEncodedBitStringSize
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BerEncoder_determineLengthSize
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_encoder.c:183,13'
          Dst:             BerEncoder_determineLengthSize
    - functionName:    BerEncoder_encodeBitString
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - char
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          148
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - BerEncoder_encodeLength
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_encoder.c:148,14'
          Dst:             BerEncoder_encodeLength
    - functionName:    BerEncoder_encodeLength
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          131
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BerEncoder_encodeOctetString
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - char
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          66
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - BerEncoder_encodeLength
      functionUses:    25
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_encoder.c:125,14'
          Dst:             BerEncoder_encodeLength
    - functionName:    BerEncoder_encodeAsn1PrimitiveValue
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - char
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          72
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - BerEncoder_encodeLength
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_encoder.c:109,14'
          Dst:             BerEncoder_encodeLength
    - functionName:    BerEncoder_encodeStringWithTag
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - char
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          84
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - BerEncoder_encodeLength
        - strlen
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_encoder.c:88,27'
          Dst:             strlen
        - Src:             'src/mms/asn1/ber_encoder.c:90,18'
          Dst:             BerEncoder_encodeLength
    - functionName:    BerEncoder_encodeBoolean
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - char
        - bool
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          54
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BerEncoder_encodeTL
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - char
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BerEncoder_encodeLength
      functionUses:    207
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_encoder.c:62,14'
          Dst:             BerEncoder_encodeLength
    - functionName:    BerInteger_toInt64
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_integer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          67
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BerInteger_toUint32
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_integer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          49
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BerInteger_toInt32
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_integer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          67
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BerInteger_createFromInt64
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_integer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BerInteger_createInt64
        - BerInteger_setInt64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_integer.c:203,37'
          Dst:             BerInteger_createInt64
        - Src:             'src/mms/asn1/ber_integer.c:207,9'
          Dst:             BerInteger_setInt64
    - functionName:    BerInteger_createInt64
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_integer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Asn1PrimitiveValue_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_integer.c:188,12'
          Dst:             Asn1PrimitiveValue_create
    - functionName:    BerInteger_setInt64
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_integer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - setIntegerValue
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_integer.c:197,12'
          Dst:             setIntegerValue
    - functionName:    setIntegerValue
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_integer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BerEncoder_compressInteger
        - BerEncoder_revertByteOrder
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_integer.c:32,5'
          Dst:             BerEncoder_revertByteOrder
        - Src:             'src/mms/asn1/ber_integer.c:35,16'
          Dst:             BerEncoder_compressInteger
    - functionName:    BerInteger_createFromUint32
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_integer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BerInteger_createInt32
        - BerInteger_setUint32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_integer.c:175,37'
          Dst:             BerInteger_createInt32
        - Src:             'src/mms/asn1/ber_integer.c:179,9'
          Dst:             BerInteger_setUint32
    - functionName:    BerInteger_createInt32
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_integer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Asn1PrimitiveValue_create
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_integer.c:51,12'
          Dst:             Asn1PrimitiveValue_create
    - functionName:    BerInteger_setUint32
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_integer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          53
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - setIntegerValue
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_integer.c:169,12'
          Dst:             setIntegerValue
    - functionName:    BerInteger_setUint8
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_integer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - setIntegerValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_integer.c:144,12'
          Dst:             setIntegerValue
    - functionName:    BerInteger_setUint16
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_integer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          53
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - setIntegerValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_integer.c:135,12'
          Dst:             setIntegerValue
    - functionName:    BerInteger_createFromInt32
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_integer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BerInteger_createInt32
        - BerInteger_setInt32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_integer.c:103,37'
          Dst:             BerInteger_createInt32
        - Src:             'src/mms/asn1/ber_integer.c:107,9'
          Dst:             BerInteger_setInt32
    - functionName:    BerInteger_setInt32
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_integer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - setIntegerValue
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_integer.c:97,12'
          Dst:             setIntegerValue
    - functionName:    BerInteger_setFromBerInteger
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_integer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BerInteger_createFromBuffer
      functionSourceFile: '/src/libiec61850/src/mms/asn1/ber_integer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Asn1PrimitiveValue_create
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/asn1/ber_integer.c:64,32'
          Dst:             Asn1PrimitiveValue_create
    - functionName:    IsoClientConnection_allocateTransmitBuffer
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1108
      functionLinenumberEnd: 1116
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_wait
      functionUses:    40
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_client/iso_client_connection.c:1110,5'
          Dst:             Semaphore_wait
    - functionName:    IsoClientConnection_release
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1071
      functionLinenumberEnd: 1104
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          100
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - AcseConnection_createReleaseRequestMessage
        - CotpConnection_sendDataMessage
        - IsoClientConnection_allocateTransmitBuffer
        - IsoPresentation_createUserDataACSE
        - IsoSession_createFinishSpdu
        - Semaphore_post
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_client/iso_client_connection.c:1073,5'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_client/iso_client_connection.c:1081,5'
          Dst:             AcseConnection_createReleaseRequestMessage
        - Src:             'src/mms/iso_client/iso_client_connection.c:1089,5'
          Dst:             IsoPresentation_createUserDataACSE
        - Src:             'src/mms/iso_client/iso_client_connection.c:1097,5'
          Dst:             IsoSession_createFinishSpdu
        - Src:             'src/mms/iso_client/iso_client_connection.c:1099,5'
          Dst:             CotpConnection_sendDataMessage
        - Src:             'src/mms/iso_client/iso_client_connection.c:1102,5'
          Dst:             Semaphore_post
    - functionName:    sendAbortMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1029
      functionLinenumberEnd: 1061
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          103
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - AcseConnection_createAbortMessage
        - CotpConnection_sendDataMessage
        - IsoClientConnection_allocateTransmitBuffer
        - IsoPresentation_createAbortUserMessage
        - IsoSession_createAbortSpdu
        - Semaphore_post
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_client/iso_client_connection.c:1030,5'
          Dst:             IsoClientConnection_allocateTransmitBuffer
        - Src:             'src/mms/iso_client/iso_client_connection.c:1038,5'
          Dst:             AcseConnection_createAbortMessage
        - Src:             'src/mms/iso_client/iso_client_connection.c:1046,5'
          Dst:             IsoPresentation_createAbortUserMessage
        - Src:             'src/mms/iso_client/iso_client_connection.c:1054,5'
          Dst:             IsoSession_createAbortSpdu
        - Src:             'src/mms/iso_client/iso_client_connection.c:1056,5'
          Dst:             CotpConnection_sendDataMessage
        - Src:             'src/mms/iso_client/iso_client_connection.c:1059,5'
          Dst:             Semaphore_post
    - functionName:    IsoClientConnection_abortAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1065
      functionLinenumberEnd: 1067
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sendAbortMessage
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_client/iso_client_connection.c:1066,5'
          Dst:             sendAbortMessage
    - functionName:    IsoClientConnection_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 949
      functionLinenumberEnd: 1025
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         36
      ICount:          236
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - Handleset_destroy
        - IsoClientConnection_close
        - Memory_free
        - Semaphore_destroy
        - getState
        - releaseSocket
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_client/iso_client_connection.c:953,17'
          Dst:             getState
        - Src:             'src/mms/iso_client/iso_client_connection.c:960,9'
          Dst:             IsoClientConnection_close
        - Src:             'src/mms/iso_client/iso_client_connection.c:963,5'
          Dst:             releaseSocket
        - Src:             'src/mms/iso_client/iso_client_connection.c:966,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_client/iso_client_connection.c:968,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_client/iso_client_connection.c:973,13'
          Dst:             Handleset_destroy
        - Src:             'src/mms/iso_client/iso_client_connection.c:975,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_client/iso_client_connection.c:977,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_client/iso_client_connection.c:981,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_client/iso_client_connection.c:984,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_client/iso_client_connection.c:987,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_client/iso_client_connection.c:990,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_client/iso_client_connection.c:993,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_client/iso_client_connection.c:995,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_client/iso_client_connection.c:997,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_client/iso_client_connection.c:998,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_client/iso_client_connection.c:1001,5'
          Dst:             Semaphore_destroy
        - Src:             'src/mms/iso_client/iso_client_connection.c:1002,5'
          Dst:             Semaphore_destroy
        - Src:             'src/mms/iso_client/iso_client_connection.c:1003,5'
          Dst:             Semaphore_destroy
        - Src:             'src/mms/iso_client/iso_client_connection.c:1023,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_client/iso_client_connection.c:1024,5'
          Dst:             Memory_free
    - functionName:    getState
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_client/iso_client_connection.c:143,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_client/iso_client_connection.c:149,5'
          Dst:             Semaphore_post
    - functionName:    IsoClientConnection_close
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 918
      functionLinenumberEnd: 945
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          64
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - IsoClientConnection_handleConnection
        - Semaphore_post
        - Semaphore_wait
        - getIntState
        - setIntState
        - setState
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_client/iso_client_connection.c:923,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_client/iso_client_connection.c:926,40'
          Dst:             getIntState
        - Src:             'src/mms/iso_client/iso_client_connection.c:930,9'
          Dst:             setIntState
        - Src:             'src/mms/iso_client/iso_client_connection.c:933,9'
          Dst:             Semaphore_post
        - Src:             'src/mms/iso_client/iso_client_connection.c:936,9'
          Dst:             IsoClientConnection_handleConnection
        - Src:             'src/mms/iso_client/iso_client_connection.c:937,9'
          Dst:             setState
        - Src:             'src/mms/iso_client/iso_client_connection.c:942,9'
          Dst:             Semaphore_post
    - functionName:    releaseSocket
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 408
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Socket_destroy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_client/iso_client_connection.c:405,9'
          Dst:             Socket_destroy
    - functionName:    getIntState
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setIntState
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoClientConnection_handleConnection
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 419
      functionLinenumberEnd: 766
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         79
      ICount:          629
      EdgeCount:       97
      CyclomaticComplexity: 20
      functionsReached:
        - AcseConnection_parseMessage
        - ByteBuffer_wrap
        - CotpConnection_getPayload
        - CotpConnection_parseIncomingMessage
        - CotpConnection_readToTpktBuffer
        - CotpConnection_resetPayload
        - Hal_getMonotonicTimeInMs
        - IsoClientConnection_releaseTransmitBuffer
        - IsoPresentation_parseAcceptMessage
        - IsoPresentation_parseUserData
        - IsoSession_getUserData
        - IsoSession_parseMessage
        - Semaphore_post
        - Semaphore_wait
        - Socket_checkAsyncConnectState
        - getIntState
        - releaseSocket
        - sendAcseInitiateRequest
        - sendConnectionRequestMessage
        - setIntState
        - setState
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/mms/iso_client/iso_client_connection.c:430,5'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_client/iso_client_connection.c:663,17'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_client/iso_client_connection.c:421,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_client/iso_client_connection.c:426,44'
          Dst:             getIntState
        - Src:             'src/mms/iso_client/iso_client_connection.c:439,39'
          Dst:             Socket_checkAsyncConnectState
        - Src:             'src/mms/iso_client/iso_client_connection.c:443,21'
          Dst:             sendConnectionRequestMessage
        - Src:             'src/mms/iso_client/iso_client_connection.c:445,45'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_client/iso_client_connection.c:450,21'
          Dst:             IsoClientConnection_releaseTransmitBuffer
        - Src:             'src/mms/iso_client/iso_client_connection.c:457,17'
          Dst:             IsoClientConnection_releaseTransmitBuffer
        - Src:             'src/mms/iso_client/iso_client_connection.c:465,40'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_client/iso_client_connection.c:469,21'
          Dst:             IsoClientConnection_releaseTransmitBuffer
        - Src:             'src/mms/iso_client/iso_client_connection.c:484,36'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_client/iso_client_connection.c:491,17'
          Dst:             IsoClientConnection_releaseTransmitBuffer
        - Src:             'src/mms/iso_client/iso_client_connection.c:499,41'
          Dst:             CotpConnection_readToTpktBuffer
        - Src:             'src/mms/iso_client/iso_client_connection.c:503,53'
          Dst:             CotpConnection_parseIncomingMessage
        - Src:             'src/mms/iso_client/iso_client_connection.c:510,25'
          Dst:             IsoClientConnection_releaseTransmitBuffer
        - Src:             'src/mms/iso_client/iso_client_connection.c:518,25'
          Dst:             sendAcseInitiateRequest
        - Src:             'src/mms/iso_client/iso_client_connection.c:520,49'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_client/iso_client_connection.c:530,21'
          Dst:             IsoClientConnection_releaseTransmitBuffer
        - Src:             'src/mms/iso_client/iso_client_connection.c:545,36'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_client/iso_client_connection.c:558,41'
          Dst:             CotpConnection_readToTpktBuffer
        - Src:             'src/mms/iso_client/iso_client_connection.c:562,53'
          Dst:             CotpConnection_parseIncomingMessage
        - Src:             'src/mms/iso_client/iso_client_connection.c:580,72'
          Dst:             CotpConnection_getPayload
        - Src:             'src/mms/iso_client/iso_client_connection.c:580,33'
          Dst:             IsoSession_parseMessage
        - Src:             'src/mms/iso_client/iso_client_connection.c:593,88'
          Dst:             IsoSession_getUserData
        - Src:             'src/mms/iso_client/iso_client_connection.c:593,33'
          Dst:             IsoPresentation_parseAcceptMessage
        - Src:             'src/mms/iso_client/iso_client_connection.c:604,65'
          Dst:             AcseConnection_parseMessage
        - Src:             'src/mms/iso_client/iso_client_connection.c:620,37'
          Dst:             ByteBuffer_wrap
        - Src:             'src/mms/iso_client/iso_client_connection.c:623,37'
          Dst:             setState
        - Src:             'src/mms/iso_client/iso_client_connection.c:632,29'
          Dst:             CotpConnection_resetPayload
        - Src:             'src/mms/iso_client/iso_client_connection.c:654,37'
          Dst:             CotpConnection_readToTpktBuffer
        - Src:             'src/mms/iso_client/iso_client_connection.c:661,49'
          Dst:             CotpConnection_parseIncomingMessage
        - Src:             'src/mms/iso_client/iso_client_connection.c:681,41'
          Dst:             CotpConnection_getPayload
        - Src:             'src/mms/iso_client/iso_client_connection.c:680,33'
          Dst:             IsoSession_parseMessage
        - Src:             'src/mms/iso_client/iso_client_connection.c:692,84'
          Dst:             IsoSession_getUserData
        - Src:             'src/mms/iso_client/iso_client_connection.c:692,34'
          Dst:             IsoPresentation_parseUserData
        - Src:             'src/mms/iso_client/iso_client_connection.c:704,33'
          Dst:             CotpConnection_resetPayload
        - Src:             'src/mms/iso_client/iso_client_connection.c:727,13'
          Dst:             setState
        - Src:             'src/mms/iso_client/iso_client_connection.c:731,13'
          Dst:             releaseSocket
        - Src:             'src/mms/iso_client/iso_client_connection.c:739,13'
          Dst:             setState
        - Src:             'src/mms/iso_client/iso_client_connection.c:743,13'
          Dst:             releaseSocket
        - Src:             'src/mms/iso_client/iso_client_connection.c:760,5'
          Dst:             setIntState
        - Src:             'src/mms/iso_client/iso_client_connection.c:763,5'
          Dst:             Semaphore_post
    - functionName:    setState
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_client/iso_client_connection.c:127,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_client/iso_client_connection.c:133,5'
          Dst:             Semaphore_post
    - functionName:    sendConnectionRequestMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 336
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          125
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - CotpConnection_init
        - CotpConnection_sendConnectionRequestMessage
        - Handleset_destroy
        - Memory_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_client/iso_client_connection.c:283,13'
          Dst:             Handleset_destroy
        - Src:             'src/mms/iso_client/iso_client_connection.c:291,43'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_client/iso_client_connection.c:297,9'
          Dst:             CotpConnection_init
        - Src:             'src/mms/iso_client/iso_client_connection.c:322,17'
          Dst:             CotpConnection_sendConnectionRequestMessage
    - functionName:    IsoClientConnection_releaseTransmitBuffer
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1121
      functionLinenumberEnd: 1125
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_client/iso_client_connection.c:1123,5'
          Dst:             Semaphore_post
    - functionName:    sendAcseInitiateRequest
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 340
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          155
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - AcseConnection_createAssociateRequestMessage
        - AcseConnection_init
        - CotpConnection_sendDataMessage
        - IsoPresentation_createConnectPdu
        - IsoPresentation_init
        - IsoSession_createConnectSpdu
        - IsoSession_init
        - Semaphore_post
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_client/iso_client_connection.c:349,5'
          Dst:             AcseConnection_init
        - Src:             'src/mms/iso_client/iso_client_connection.c:359,5'
          Dst:             AcseConnection_createAssociateRequestMessage
        - Src:             'src/mms/iso_client/iso_client_connection.c:368,5'
          Dst:             IsoPresentation_init
        - Src:             'src/mms/iso_client/iso_client_connection.c:369,5'
          Dst:             IsoPresentation_createConnectPdu
        - Src:             'src/mms/iso_client/iso_client_connection.c:375,5'
          Dst:             IsoSession_init
        - Src:             'src/mms/iso_client/iso_client_connection.c:376,5'
          Dst:             IsoSession_createConnectSpdu
        - Src:             'src/mms/iso_client/iso_client_connection.c:379,5'
          Dst:             CotpConnection_sendDataMessage
        - Src:             'src/mms/iso_client/iso_client_connection.c:382,5'
          Dst:             Semaphore_post
    - functionName:    IsoClientConnection_sendMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 877
      functionLinenumberEnd: 914
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          94
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - BufferChain_init
        - CotpConnection_sendDataMessage
        - IsoPresentation_createUserData
        - IsoSession_createDataSpdu
        - Semaphore_post
        - getState
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_client/iso_client_connection.c:878,9'
          Dst:             getState
        - Src:             'src/mms/iso_client/iso_client_connection.c:883,9'
          Dst:             BufferChain_init
        - Src:             'src/mms/iso_client/iso_client_connection.c:891,9'
          Dst:             IsoPresentation_createUserData
        - Src:             'src/mms/iso_client/iso_client_connection.c:896,9'
          Dst:             IsoSession_createDataSpdu
        - Src:             'src/mms/iso_client/iso_client_connection.c:898,37'
          Dst:             CotpConnection_sendDataMessage
        - Src:             'src/mms/iso_client/iso_client_connection.c:912,5'
          Dst:             Semaphore_post
    - functionName:    IsoClientConnection_associateAsync
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 771
      functionLinenumberEnd: 873
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          158
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - Hal_getMonotonicTimeInMs
        - IsoClientConnection_releaseTransmitBuffer
        - Semaphore_post
        - Semaphore_wait
        - Socket_activateTcpKeepAlive
        - Socket_bind
        - Socket_connectAsync
        - Socket_destroy
        - TcpSocket_create
        - setIntState
        - setState
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_client/iso_client_connection.c:773,5'
          Dst:             Semaphore_wait
        - Src:             'src/mms/iso_client/iso_client_connection.c:778,20'
          Dst:             TcpSocket_create
        - Src:             'src/mms/iso_client/iso_client_connection.c:783,9'
          Dst:             Semaphore_post
        - Src:             'src/mms/iso_client/iso_client_connection.c:790,5'
          Dst:             setState
        - Src:             'src/mms/iso_client/iso_client_connection.c:791,5'
          Dst:             setIntState
        - Src:             'src/mms/iso_client/iso_client_connection.c:794,5'
          Dst:             Socket_activateTcpKeepAlive
        - Src:             'src/mms/iso_client/iso_client_connection.c:804,29'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/mms/iso_client/iso_client_connection.c:809,13'
          Dst:             Socket_bind
        - Src:             'src/mms/iso_client/iso_client_connection.c:825,9'
          Dst:             Socket_connectAsync
        - Src:             'src/mms/iso_client/iso_client_connection.c:834,9'
          Dst:             Socket_destroy
        - Src:             'src/mms/iso_client/iso_client_connection.c:837,9'
          Dst:             setIntState
        - Src:             'src/mms/iso_client/iso_client_connection.c:838,9'
          Dst:             setState
        - Src:             'src/mms/iso_client/iso_client_connection.c:840,9'
          Dst:             IsoClientConnection_releaseTransmitBuffer
        - Src:             'src/mms/iso_client/iso_client_connection.c:869,5'
          Dst:             Semaphore_post
    - functionName:    IsoClientConnection_getTLSConfiguration
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoClientConnection_setTLSConfiguration
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoClientConnection_create
      functionSourceFile: '/src/libiec61850/src/mms/iso_client/iso_client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          147
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ByteBuffer_wrap
        - Memory_calloc
        - Memory_malloc
        - Semaphore_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_client/iso_client_connection.c:170,54'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_client/iso_client_connection.c:194,28'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_client/iso_client_connection.c:195,37'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_client/iso_client_connection.c:196,27'
          Dst:             Semaphore_create
        - Src:             'src/mms/iso_client/iso_client_connection.c:202,39'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_client/iso_client_connection.c:204,53'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_client/iso_client_connection.c:208,52'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_client/iso_client_connection.c:210,39'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_client/iso_client_connection.c:211,45'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_client/iso_client_connection.c:212,9'
          Dst:             ByteBuffer_wrap
        - Src:             'src/mms/iso_client/iso_client_connection.c:214,49'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_client/iso_client_connection.c:216,39'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_client/iso_client_connection.c:218,40'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_client/iso_client_connection.c:219,41'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_client/iso_client_connection.c:221,46'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_client/iso_client_connection.c:222,9'
          Dst:             ByteBuffer_wrap
        - Src:             'src/mms/iso_client/iso_client_connection.c:224,47'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_client/iso_client_connection.c:225,9'
          Dst:             ByteBuffer_wrap
        - Src:             'src/mms/iso_client/iso_client_connection.c:227,50'
          Dst:             Memory_calloc
    - functionName:    IsoConnectionParameters_setLocalAddresses
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoConnectionParameters_setLocalApTitle
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BerEncoder_encodeOIDToBuffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_common/iso_connection_parameters.c:205,33'
          Dst:             BerEncoder_encodeOIDToBuffer
    - functionName:    IsoConnectionParameters_setRemoteAddresses
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoConnectionParameters_setRemoteApTitle
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BerEncoder_encodeOIDToBuffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_common/iso_connection_parameters.c:185,34'
          Dst:             BerEncoder_encodeOIDToBuffer
    - functionName:    IsoConnectionParameters_setLocalTcpParameters
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_common/iso_connection_parameters.c:172,36'
          Dst:             strdup
    - functionName:    strdup
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoConnectionParameters_setTcpParameters
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoConnectionParameters_setAcseAuthenticationParameter
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoConnectionParameters_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_common/iso_connection_parameters.c:145,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_common/iso_connection_parameters.c:147,9'
          Dst:             Memory_free
    - functionName:    IsoConnectionParameters_create
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_common/iso_connection_parameters.c:134,62'
          Dst:             Memory_calloc
    - functionName:    ItuObjectIdentifier_getArc
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ItuObjectIdentifier_getArcCount
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoApplicationReference_getApTitle
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          23
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoApplicationReference_getAeQualifier
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    AcseAuthenticationParameter_getAuthMechanism
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    AcseAuthenticationParameter_setAuthMechanism
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    AcseAuthenticationParameter_getPasswordLength
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    AcseAuthenticationParameter_getPassword
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    AcseAuthenticationParameter_setPassword
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - StringUtils_copyString
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_common/iso_connection_parameters.c:56,51'
          Dst:             StringUtils_copyString
        - Src:             'src/mms/iso_common/iso_connection_parameters.c:57,43'
          Dst:             strlen
    - functionName:    AcseAuthenticationParameter_destroy
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_common/iso_connection_parameters.c:48,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_common/iso_connection_parameters.c:50,5'
          Dst:             Memory_free
    - functionName:    AcseAuthenticationParameter_create
      functionSourceFile: '/src/libiec61850/src/mms/iso_common/iso_connection_parameters.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_common/iso_connection_parameters.c:38,9'
          Dst:             Memory_calloc
    - functionName:    parseAcceptParameters
      functionSourceFile: '/src/libiec61850/src/mms/iso_session/iso_session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          240
      EdgeCount:       34
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_session/iso_session.c:58,9'
          Branch Sides:    []
      Callsites:       []
    - functionName:    parseSessionHeaderParameters
      functionSourceFile: '/src/libiec61850/src/mms/iso_session/iso_session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          337
      EdgeCount:       45
      CyclomaticComplexity: 9
      functionsReached:
        - ByteBuffer_wrap
        - parseAcceptParameters
      functionUses:    4
      BranchProfiles:
        - Branch String:   'src/mms/iso_session/iso_session.c:164,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_session/iso_session.c:179,32'
          Dst:             parseAcceptParameters
        - Src:             'src/mms/iso_session/iso_session.c:254,13'
          Dst:             ByteBuffer_wrap
    - functionName:    IsoSession_parseMessage
      functionSourceFile: '/src/libiec61850/src/mms/iso_session/iso_session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         41
      ICount:          257
      EdgeCount:       53
      CyclomaticComplexity: 14
      functionsReached:
        - ByteBuffer_wrap
        - parseSessionHeaderParameters
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/mms/iso_session/iso_session.c:537,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_session/iso_session.c:542,13'
          Dst:             parseSessionHeaderParameters
        - Src:             'src/mms/iso_session/iso_session.c:554,13'
          Dst:             parseSessionHeaderParameters
        - Src:             'src/mms/iso_session/iso_session.c:570,13'
          Dst:             ByteBuffer_wrap
        - Src:             'src/mms/iso_session/iso_session.c:586,13'
          Dst:             parseSessionHeaderParameters
        - Src:             'src/mms/iso_session/iso_session.c:600,13'
          Dst:             parseSessionHeaderParameters
    - functionName:    IsoSession_getUserData
      functionSourceFile: '/src/libiec61850/src/mms/iso_session/iso_session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 518
      functionLinenumberEnd: 519
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoSession_init
      functionSourceFile: '/src/libiec61850/src/mms/iso_session/iso_session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 503
      functionLinenumberEnd: 514
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          39
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encodeConnectionIdentifier
      functionSourceFile: '/src/libiec61850/src/mms/iso_session/iso_session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          68
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoSession_createRefuseSpdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_session/iso_session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 499
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - encodeConnectionIdentifier
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_session/iso_session.c:498,14'
          Dst:             encodeConnectionIdentifier
    - functionName:    IsoSession_createAcceptSpdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_session/iso_session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 458
      functionLinenumberEnd: 484
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          94
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - encodeCalledSessionSelector
        - encodeConnectAcceptItem
        - encodeSessionRequirement
        - encodeSessionUserData
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_session/iso_session.c:469,14'
          Dst:             encodeConnectAcceptItem
        - Src:             'src/mms/iso_session/iso_session.c:471,14'
          Dst:             encodeSessionRequirement
        - Src:             'src/mms/iso_session/iso_session.c:473,14'
          Dst:             encodeCalledSessionSelector
        - Src:             'src/mms/iso_session/iso_session.c:475,14'
          Dst:             encodeSessionUserData
    - functionName:    encodeConnectAcceptItem
      functionSourceFile: '/src/libiec61850/src/mms/iso_session/iso_session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 299
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          68
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encodeSessionRequirement
      functionSourceFile: '/src/libiec61850/src/mms/iso_session/iso_session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 325
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          51
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encodeCalledSessionSelector
      functionSourceFile: '/src/libiec61850/src/mms/iso_session/iso_session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 343
      functionLinenumberEnd: 351
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          66
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encodeSessionUserData
      functionSourceFile: '/src/libiec61850/src/mms/iso_session/iso_session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          26
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoSession_createDisconnectSpdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_session/iso_session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 454
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          71
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoSession_createFinishSpdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_session/iso_session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 420
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          71
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoSession_createAbortSpdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_session/iso_session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          92
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encodeCallingSessionSelector
      functionSourceFile: '/src/libiec61850/src/mms/iso_session/iso_session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          66
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IsoSession_createConnectSpdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_session/iso_session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          109
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - encodeCalledSessionSelector
        - encodeCallingSessionSelector
        - encodeConnectAcceptItem
        - encodeSessionRequirement
        - encodeSessionUserData
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_session/iso_session.c:378,14'
          Dst:             encodeConnectAcceptItem
        - Src:             'src/mms/iso_session/iso_session.c:380,14'
          Dst:             encodeSessionRequirement
        - Src:             'src/mms/iso_session/iso_session.c:382,14'
          Dst:             encodeCallingSessionSelector
        - Src:             'src/mms/iso_session/iso_session.c:384,14'
          Dst:             encodeCalledSessionSelector
        - Src:             'src/mms/iso_session/iso_session.c:386,14'
          Dst:             encodeSessionUserData
    - functionName:    IsoSession_createDataSpdu
      functionSourceFile: '/src/libiec61850/src/mms/iso_session/iso_session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 278
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmsConnectionFileCloseHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2286
      functionLinenumberEnd: 2308
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - iedConnection_lookupOutstandingCall
        - iedConnection_releaseOutstandingCall
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2297,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:2301,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    iedConnection_lookupOutstandingCall
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          90
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:302,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/client/ied_connection.c:317,5'
          Dst:             Semaphore_post
    - functionName:    iedConnection_releaseOutstandingCall
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 297
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    44
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:292,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/client/ied_connection.c:296,5'
          Dst:             Semaphore_post
    - functionName:    mmsConnectionFileReadHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2313
      functionLinenumberEnd: 2385
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          223
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - MmsConnection_fileCloseAsync
        - MmsConnection_fileReadAsync
        - iedConnection_lookupOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
        - mmsConnectionFileCloseHandler
        - mmsConnectionFileReadHandler
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2316,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:2324,34'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:2331,17'
          Dst:             MmsConnection_fileCloseAsync
        - Src:             'src/iec61850/client/ied_connection.c:2331,17'
          Dst:             mmsConnectionFileCloseHandler
        - Src:             'src/iec61850/client/ied_connection.c:2334,21'
          Dst:             iedConnection_releaseOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:2341,17'
          Dst:             iedConnection_releaseOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:2351,17'
          Dst:             MmsConnection_fileCloseAsync
        - Src:             'src/iec61850/client/ied_connection.c:2351,17'
          Dst:             mmsConnectionFileCloseHandler
        - Src:             'src/iec61850/client/ied_connection.c:2354,21'
          Dst:             iedConnection_releaseOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:2360,17'
          Dst:             MmsConnection_fileReadAsync
        - Src:             'src/iec61850/client/ied_connection.c:2360,17'
          Dst:             mmsConnectionFileReadHandler
        - Src:             'src/iec61850/client/ied_connection.c:2365,42'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:2370,21'
          Dst:             MmsConnection_fileCloseAsync
        - Src:             'src/iec61850/client/ied_connection.c:2370,21'
          Dst:             mmsConnectionFileCloseHandler
        - Src:             'src/iec61850/client/ied_connection.c:2374,25'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    iedConnection_mapMmsErrorToIedError
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          107
      EdgeCount:       40
      CyclomaticComplexity: 21
      functionsReached: []
      functionUses:    73
      BranchProfiles:
        - Branch String:   'src/iec61850/client/ied_connection.c:153,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    doesReportMatchControlObject
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 571
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          358
      EdgeCount:       65
      CyclomaticComplexity: 21
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    handleLastApplErrorMessage
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 575
      functionLinenumberEnd: 627
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          126
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ControlObjectClient_getObjectReference
        - ControlObjectClient_setLastApplError
        - LinkedList_getNext
        - MmsValue_getArraySize
        - MmsValue_getElement
        - MmsValue_getType
        - MmsValue_toInt32
        - MmsValue_toString
        - MmsValue_toUint32
        - Semaphore_post
        - Semaphore_wait
        - iedConnection_doesControlObjectMatch
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:579,10'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:579,64'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/client/ied_connection.c:587,26'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/ied_connection.c:588,23'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/ied_connection.c:590,24'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/ied_connection.c:591,26'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/ied_connection.c:604,34'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/client/ied_connection.c:605,54'
          Dst:             MmsValue_toInt32
        - Src:             'src/iec61850/client/ied_connection.c:606,56'
          Dst:             MmsValue_toInt32
        - Src:             'src/iec61850/client/ied_connection.c:608,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/client/ied_connection.c:610,26'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:616,33'
          Dst:             ControlObjectClient_getObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:618,61'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/client/ied_connection.c:618,13'
          Dst:             iedConnection_doesControlObjectMatch
        - Src:             'src/iec61850/client/ied_connection.c:620,13'
          Dst:             ControlObjectClient_setLastApplError
        - Src:             'src/iec61850/client/ied_connection.c:623,19'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:626,5'
          Dst:             Semaphore_post
    - functionName:    iedConnection_doesControlObjectMatch
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 420
      functionLinenumberEnd: 487
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         39
      ICount:          286
      EdgeCount:       54
      CyclomaticComplexity: 17
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmsConnectionStateChangedHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 708
      functionLinenumberEnd: 735
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          88
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - IedConnection_setState
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:715,9'
          Dst:             IedConnection_setState
        - Src:             'src/iec61850/client/ied_connection.c:719,9'
          Dst:             IedConnection_setState
        - Src:             'src/iec61850/client/ied_connection.c:729,9'
          Dst:             IedConnection_setState
        - Src:             'src/iec61850/client/ied_connection.c:733,9'
          Dst:             IedConnection_setState
    - functionName:    IedConnection_setState
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 692
      functionLinenumberEnd: 704
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:693,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/client/ied_connection.c:703,5'
          Dst:             Semaphore_post
    - functionName:    informationReportHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 688
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          116
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - ControlObjectClient_getObjectReference
        - LinkedList_getNext
        - MmsValue_delete
        - Semaphore_post
        - Semaphore_wait
        - controlObjectClient_invokeCommandTerminationHandler
        - doesReportMatchControlObject
        - handleLastApplErrorMessage
        - iedConnection_handleReport
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:644,17'
          Dst:             iedConnection_handleReport
        - Src:             'src/iec61850/client/ied_connection.c:648,21'
          Dst:             strcmp
        - Src:             'src/iec61850/client/ied_connection.c:649,21'
          Dst:             handleLastApplErrorMessage
        - Src:             'src/iec61850/client/ied_connection.c:662,13'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/client/ied_connection.c:664,34'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:670,41'
          Dst:             ControlObjectClient_getObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:672,21'
          Dst:             doesReportMatchControlObject
        - Src:             'src/iec61850/client/ied_connection.c:673,21'
          Dst:             controlObjectClient_invokeCommandTerminationHandler
        - Src:             'src/iec61850/client/ied_connection.c:675,27'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:678,13'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/client/ied_connection.c:681,9'
          Dst:             MmsValue_delete
    - functionName:    FileDirectoryEntry_getLastModified
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4720
      functionLinenumberEnd: 4721
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    FileDirectoryEntry_getFileSize
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4714
      functionLinenumberEnd: 4715
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    FileDirectoryEntry_getFileName
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4708
      functionLinenumberEnd: 4709
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    FileDirectoryEntry_create
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4683
      functionLinenumberEnd: 4693
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
        - StringUtils_copyString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:4684,52'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/client/ied_connection.c:4688,26'
          Dst:             StringUtils_copyString
    - functionName:    iedConnection_removeControlClient
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4673
      functionLinenumberEnd: 4679
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - LinkedList_remove
        - Semaphore_post
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:4674,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/client/ied_connection.c:4676,5'
          Dst:             LinkedList_remove
        - Src:             'src/iec61850/client/ied_connection.c:4678,5'
          Dst:             Semaphore_post
    - functionName:    iedConnection_addControlClient
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4663
      functionLinenumberEnd: 4669
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - LinkedList_add
        - Semaphore_post
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:4664,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/client/ied_connection.c:4666,5'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/client/ied_connection.c:4668,5'
          Dst:             Semaphore_post
    - functionName:    IedConnection_getLastApplError
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4657
      functionLinenumberEnd: 4658
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedConnection_getMmsConnection
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4651
      functionLinenumberEnd: 4652
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedConnection_queryLogAfter
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4611
      functionLinenumberEnd: 4647
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          91
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_readJournalStartAfter
        - MmsValue_delete
        - MmsValue_newBinaryTime
        - MmsValue_setBinaryTime
        - StringUtils_copyStringMax
        - iedConnection_mapMmsErrorToIedError
        - strchr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:4616,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/client/ied_connection.c:4619,21'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:4626,34'
          Dst:             MmsValue_newBinaryTime
        - Src:             'src/iec61850/client/ied_connection.c:4627,9'
          Dst:             MmsValue_setBinaryTime
        - Src:             'src/iec61850/client/ied_connection.c:4629,37'
          Dst:             MmsConnection_readJournalStartAfter
        - Src:             'src/iec61850/client/ied_connection.c:4632,9'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/ied_connection.c:4636,22'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    IedConnection_queryLogAfterAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4557
      functionLinenumberEnd: 4606
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          121
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - MmsConnection_readJournalStartAfterAsync
        - MmsValue_delete
        - MmsValue_newBinaryTime
        - MmsValue_setBinaryTime
        - StringUtils_copyStringMax
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
        - readJournalHandler
        - strchr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:4560,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/client/ied_connection.c:4563,21'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:4570,45'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:4583,34'
          Dst:             MmsValue_newBinaryTime
        - Src:             'src/iec61850/client/ied_connection.c:4584,9'
          Dst:             MmsValue_setBinaryTime
        - Src:             'src/iec61850/client/ied_connection.c:4586,9'
          Dst:             MmsConnection_readJournalStartAfterAsync
        - Src:             'src/iec61850/client/ied_connection.c:4586,9'
          Dst:             readJournalHandler
        - Src:             'src/iec61850/client/ied_connection.c:4589,9'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/ied_connection.c:4591,18'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:4595,13'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    iedConnection_allocateOutstandingCall
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:268,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/client/ied_connection.c:284,5'
          Dst:             Semaphore_post
    - functionName:    readJournalHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4476
      functionLinenumberEnd: 4494
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - iedConnection_lookupOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:4479,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:4485,52'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:4487,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_queryLogByTimeAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4499
      functionLinenumberEnd: 4552
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          129
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - MmsConnection_readJournalTimeRangeAsync
        - MmsValue_delete
        - MmsValue_newBinaryTime
        - MmsValue_setBinaryTime
        - StringUtils_copyStringMax
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
        - readJournalHandler
        - strchr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:4502,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/client/ied_connection.c:4505,21'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:4512,45'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:4525,34'
          Dst:             MmsValue_newBinaryTime
        - Src:             'src/iec61850/client/ied_connection.c:4526,9'
          Dst:             MmsValue_setBinaryTime
        - Src:             'src/iec61850/client/ied_connection.c:4528,32'
          Dst:             MmsValue_newBinaryTime
        - Src:             'src/iec61850/client/ied_connection.c:4529,9'
          Dst:             MmsValue_setBinaryTime
        - Src:             'src/iec61850/client/ied_connection.c:4531,9'
          Dst:             MmsConnection_readJournalTimeRangeAsync
        - Src:             'src/iec61850/client/ied_connection.c:4531,9'
          Dst:             readJournalHandler
        - Src:             'src/iec61850/client/ied_connection.c:4534,9'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/ied_connection.c:4535,9'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/ied_connection.c:4537,18'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:4541,13'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_queryLogByTime
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4432
      functionLinenumberEnd: 4472
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          99
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_readJournalTimeRange
        - MmsValue_delete
        - MmsValue_newBinaryTime
        - MmsValue_setBinaryTime
        - StringUtils_copyStringMax
        - iedConnection_mapMmsErrorToIedError
        - strchr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:4437,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/client/ied_connection.c:4440,21'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:4447,34'
          Dst:             MmsValue_newBinaryTime
        - Src:             'src/iec61850/client/ied_connection.c:4448,9'
          Dst:             MmsValue_setBinaryTime
        - Src:             'src/iec61850/client/ied_connection.c:4450,32'
          Dst:             MmsValue_newBinaryTime
        - Src:             'src/iec61850/client/ied_connection.c:4451,9'
          Dst:             MmsValue_setBinaryTime
        - Src:             'src/iec61850/client/ied_connection.c:4453,37'
          Dst:             MmsConnection_readJournalTimeRange
        - Src:             'src/iec61850/client/ied_connection.c:4456,9'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/ied_connection.c:4457,9'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/ied_connection.c:4461,22'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    writeDataSetHandlerInternal
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4329
      functionLinenumberEnd: 4347
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - iedConnection_lookupOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:4332,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:4338,52'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:4340,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_writeDataSetValuesAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4352
      functionLinenumberEnd: 4427
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          196
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - MmsConnection_writeNamedVariableListAsync
        - MmsMapping_getMmsDomainFromObjectReference
        - StringUtils_copyStringToBuffer
        - StringUtils_replace
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
        - strchr
        - strlen
        - writeDataSetHandlerInternal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:4363,46'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:4374,24'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:4382,60'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:4384,17'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:4390,31'
          Dst:             StringUtils_copyStringToBuffer
        - Src:             'src/iec61850/client/ied_connection.c:4392,13'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/client/ied_connection.c:4402,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:4415,5'
          Dst:             MmsConnection_writeNamedVariableListAsync
        - Src:             'src/iec61850/client/ied_connection.c:4415,5'
          Dst:             writeDataSetHandlerInternal
        - Src:             'src/iec61850/client/ied_connection.c:4417,14'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:4421,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_writeDataSetValues
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4267
      functionLinenumberEnd: 4324
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          146
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - MmsConnection_writeNamedVariableList
        - MmsMapping_getMmsDomainFromObjectReference
        - StringUtils_copyStringToBuffer
        - StringUtils_replace
        - iedConnection_mapMmsErrorToIedError
        - strchr
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:4278,46'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:4289,24'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:4297,60'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:4299,17'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:4305,31'
          Dst:             StringUtils_copyStringToBuffer
        - Src:             'src/iec61850/client/ied_connection.c:4307,13'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/client/ied_connection.c:4319,5'
          Dst:             MmsConnection_writeNamedVariableList
        - Src:             'src/iec61850/client/ied_connection.c:4321,14'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    getDataSetHandlerInternal
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4129
      functionLinenumberEnd: 4169
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          112
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ClientDataSet_create
        - ClientDataSet_getValues
        - ClientDataSet_setDataSetValues
        - Memory_free
        - MmsValue_clone
        - MmsValue_delete
        - MmsValue_update
        - iedConnection_lookupOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:4132,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:4145,27'
          Dst:             ClientDataSet_create
        - Src:             'src/iec61850/client/ied_connection.c:4146,57'
          Dst:             MmsValue_clone
        - Src:             'src/iec61850/client/ied_connection.c:4146,17'
          Dst:             ClientDataSet_setDataSetValues
        - Src:             'src/iec61850/client/ied_connection.c:4150,43'
          Dst:             ClientDataSet_getValues
        - Src:             'src/iec61850/client/ied_connection.c:4151,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/client/ied_connection.c:4154,13'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/ied_connection.c:4158,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/client/ied_connection.c:4160,52'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:4162,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    ClientDataSet_create
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_calloc
        - StringUtils_copyString
        - StringUtils_replace
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:358,42'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/client/ied_connection.c:362,34'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/client/ied_connection.c:365,13'
          Dst:             StringUtils_replace
    - functionName:    ClientDataSet_setDataSetValues
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 389
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientDataSet_getValues
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedConnection_readDataSetValuesAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4174
      functionLinenumberEnd: 4262
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          239
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - Memory_free
        - MmsConnection_readNamedVariableListValuesAssociationSpecificAsync
        - MmsConnection_readNamedVariableListValuesAsync
        - MmsMapping_getMmsDomainFromObjectReference
        - StringUtils_copyString
        - StringUtils_copyStringToBuffer
        - StringUtils_replace
        - getDataSetHandlerInternal
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
        - strchr
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:4185,46'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:4196,24'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:4204,60'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:4206,17'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:4212,31'
          Dst:             StringUtils_copyStringToBuffer
        - Src:             'src/iec61850/client/ied_connection.c:4214,13'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/client/ied_connection.c:4224,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:4237,44'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/client/ied_connection.c:4244,9'
          Dst:             MmsConnection_readNamedVariableListValuesAssociationSpecificAsync
        - Src:             'src/iec61850/client/ied_connection.c:4244,9'
          Dst:             getDataSetHandlerInternal
        - Src:             'src/iec61850/client/ied_connection.c:4247,9'
          Dst:             MmsConnection_readNamedVariableListValuesAsync
        - Src:             'src/iec61850/client/ied_connection.c:4247,9'
          Dst:             getDataSetHandlerInternal
        - Src:             'src/iec61850/client/ied_connection.c:4250,14'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:4254,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/client/ied_connection.c:4256,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_readDataSetValues
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4042
      functionLinenumberEnd: 4124
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          196
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - ClientDataSet_create
        - ClientDataSet_getValues
        - ClientDataSet_setDataSetValues
        - MmsConnection_readNamedVariableListValues
        - MmsConnection_readNamedVariableListValuesAssociationSpecific
        - MmsMapping_getMmsDomainFromObjectReference
        - MmsValue_delete
        - MmsValue_update
        - StringUtils_copyStringToBuffer
        - StringUtils_replace
        - iedConnection_mapMmsErrorToIedError
        - strchr
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:4053,46'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:4064,24'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:4072,60'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:4074,17'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:4080,31'
          Dst:             StringUtils_copyStringToBuffer
        - Src:             'src/iec61850/client/ied_connection.c:4082,13'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/client/ied_connection.c:4097,22'
          Dst:             MmsConnection_readNamedVariableListValuesAssociationSpecific
        - Src:             'src/iec61850/client/ied_connection.c:4100,22'
          Dst:             MmsConnection_readNamedVariableListValues
        - Src:             'src/iec61850/client/ied_connection.c:4105,18'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:4113,19'
          Dst:             ClientDataSet_create
        - Src:             'src/iec61850/client/ied_connection.c:4114,9'
          Dst:             ClientDataSet_setDataSetValues
        - Src:             'src/iec61850/client/ied_connection.c:4118,35'
          Dst:             ClientDataSet_getValues
        - Src:             'src/iec61850/client/ied_connection.c:4119,9'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/client/ied_connection.c:4120,9'
          Dst:             MmsValue_delete
    - functionName:    getDataSetDirectoryAsyncHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3908
      functionLinenumberEnd: 3949
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          142
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - LinkedList_add
        - LinkedList_create
        - LinkedList_destroyDeep
        - LinkedList_getData
        - LinkedList_getNext
        - MmsMapping_varAccessSpecToObjectReference
        - MmsVariableAccessSpecification_destroy
        - iedConnection_lookupOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:3913,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:3920,19'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:3924,30'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/client/ied_connection.c:3925,35'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:3929,98'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/client/ied_connection.c:3931,41'
          Dst:             MmsMapping_varAccessSpecToObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:3933,17'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/client/ied_connection.c:3935,28'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:3944,9'
          Dst:             iedConnection_releaseOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:3948,9'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/iec61850/client/ied_connection.c:3948,9'
          Dst:             MmsVariableAccessSpecification_destroy
    - functionName:    IedConnection_getDataSetDirectoryAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3954
      functionLinenumberEnd: 4037
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          213
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - MmsConnection_readNamedVariableListDirectoryAssociationSpecificAsync
        - MmsConnection_readNamedVariableListDirectoryAsync
        - MmsMapping_getMmsDomainFromObjectReference
        - StringUtils_copyStringToBuffer
        - StringUtils_replace
        - getDataSetDirectoryAsyncHandler
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
        - strchr
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:3957,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:3979,46'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:3990,24'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:3998,56'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:4000,17'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:4006,39'
          Dst:             StringUtils_copyStringToBuffer
        - Src:             'src/iec61850/client/ied_connection.c:4007,13'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/client/ied_connection.c:4018,9'
          Dst:             MmsConnection_readNamedVariableListDirectoryAssociationSpecificAsync
        - Src:             'src/iec61850/client/ied_connection.c:4018,9'
          Dst:             getDataSetDirectoryAsyncHandler
        - Src:             'src/iec61850/client/ied_connection.c:4021,9'
          Dst:             MmsConnection_readNamedVariableListDirectoryAsync
        - Src:             'src/iec61850/client/ied_connection.c:4021,9'
          Dst:             getDataSetDirectoryAsyncHandler
        - Src:             'src/iec61850/client/ied_connection.c:4023,14'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:4029,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_getDataSetDirectory
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3813
      functionLinenumberEnd: 3903
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          219
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - LinkedList_add
        - LinkedList_create
        - LinkedList_destroyDeep
        - LinkedList_getData
        - LinkedList_getNext
        - MmsConnection_readNamedVariableListDirectory
        - MmsConnection_readNamedVariableListDirectoryAssociationSpecific
        - MmsMapping_getMmsDomainFromObjectReference
        - MmsMapping_varAccessSpecToObjectReference
        - MmsVariableAccessSpecification_destroy
        - StringUtils_copyStringToBuffer
        - StringUtils_replace
        - iedConnection_mapMmsErrorToIedError
        - strchr
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:3828,46'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:3839,24'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:3847,56'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3849,17'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3855,39'
          Dst:             StringUtils_copyStringToBuffer
        - Src:             'src/iec61850/client/ied_connection.c:3856,13'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/client/ied_connection.c:3871,19'
          Dst:             MmsConnection_readNamedVariableListDirectoryAssociationSpecific
        - Src:             'src/iec61850/client/ied_connection.c:3874,19'
          Dst:             MmsConnection_readNamedVariableListDirectory
        - Src:             'src/iec61850/client/ied_connection.c:3879,28'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:3881,26'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/client/ied_connection.c:3885,94'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/client/ied_connection.c:3887,37'
          Dst:             MmsMapping_varAccessSpecToObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:3889,13'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/client/ied_connection.c:3891,21'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:3897,9'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/iec61850/client/ied_connection.c:3897,9'
          Dst:             MmsVariableAccessSpecification_destroy
        - Src:             'src/iec61850/client/ied_connection.c:3900,14'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    createDataSetAsyncHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3667
      functionLinenumberEnd: 3693
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          81
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - iedConnection_lookupOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:3670,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:3676,30'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:3686,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_createDataSetAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3698
      functionLinenumberEnd: 3809
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          267
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - LinkedList_add
        - LinkedList_create
        - LinkedList_destroyDeep
        - LinkedList_getNext
        - MmsConnection_defineNamedVariableListAssociationSpecificAsync
        - MmsConnection_defineNamedVariableListAsync
        - MmsMapping_ObjectReferenceToVariableAccessSpec
        - MmsMapping_getMmsDomainFromObjectReference
        - MmsVariableAccessSpecification_destroy
        - StringUtils_copyStringToBuffer
        - StringUtils_replace
        - createDataSetAsyncHandler
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
        - strchr
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:3701,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:3722,46'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:3733,24'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:3741,39'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3743,18'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3749,31'
          Dst:             StringUtils_copyStringToBuffer
        - Src:             'src/iec61850/client/ied_connection.c:3750,13'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/client/ied_connection.c:3760,33'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/client/ied_connection.c:3762,33'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:3767,17'
          Dst:             MmsMapping_ObjectReferenceToVariableAccessSpec
        - Src:             'src/iec61850/client/ied_connection.c:3775,9'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/client/ied_connection.c:3777,26'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:3782,9'
          Dst:             MmsConnection_defineNamedVariableListAssociationSpecificAsync
        - Src:             'src/iec61850/client/ied_connection.c:3782,9'
          Dst:             createDataSetAsyncHandler
        - Src:             'src/iec61850/client/ied_connection.c:3787,9'
          Dst:             MmsConnection_defineNamedVariableListAsync
        - Src:             'src/iec61850/client/ied_connection.c:3787,9'
          Dst:             createDataSetAsyncHandler
        - Src:             'src/iec61850/client/ied_connection.c:3791,14'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:3795,5'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/iec61850/client/ied_connection.c:3795,5'
          Dst:             MmsVariableAccessSpecification_destroy
        - Src:             'src/iec61850/client/ied_connection.c:3802,13'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    deleteNamedVariableListHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3542
      functionLinenumberEnd: 3568
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          81
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - iedConnection_lookupOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:3545,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:3551,30'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:3561,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_deleteDataSetAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3573
      functionLinenumberEnd: 3663
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          244
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - MmsConnection_deleteAssociationSpecificNamedVariableListAsync
        - MmsConnection_deleteNamedVariableListAsync
        - MmsMapping_getMmsDomainFromObjectReference
        - StringUtils_copyStringMax
        - StringUtils_copyStringToBuffer
        - StringUtils_replace
        - deleteNamedVariableListHandler
        - iedConnection_allocateOutstandingCall
        - iedConnection_releaseOutstandingCall
        - strchr
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:3581,39'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3585,46'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:3590,17'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/client/ied_connection.c:3592,17'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/client/ied_connection.c:3596,17'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:3602,59'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3604,17'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3610,13'
          Dst:             StringUtils_copyStringToBuffer
        - Src:             'src/iec61850/client/ied_connection.c:3612,13'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/client/ied_connection.c:3623,9'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/client/ied_connection.c:3636,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:3649,9'
          Dst:             MmsConnection_deleteAssociationSpecificNamedVariableListAsync
        - Src:             'src/iec61850/client/ied_connection.c:3649,9'
          Dst:             deleteNamedVariableListHandler
        - Src:             'src/iec61850/client/ied_connection.c:3653,9'
          Dst:             MmsConnection_deleteNamedVariableListAsync
        - Src:             'src/iec61850/client/ied_connection.c:3653,9'
          Dst:             deleteNamedVariableListHandler
        - Src:             'src/iec61850/client/ied_connection.c:3658,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_deleteDataSet
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3473
      functionLinenumberEnd: 3537
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          173
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - MmsConnection_deleteAssociationSpecificNamedVariableList
        - MmsConnection_deleteNamedVariableList
        - MmsMapping_getMmsDomainFromObjectReference
        - StringUtils_copyStringMax
        - StringUtils_copyStringToBuffer
        - StringUtils_replace
        - iedConnection_mapMmsErrorToIedError
        - strchr
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:3480,39'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3484,46'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:3489,17'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/client/ied_connection.c:3491,17'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/client/ied_connection.c:3495,17'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:3501,59'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3503,17'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3509,13'
          Dst:             StringUtils_copyStringToBuffer
        - Src:             'src/iec61850/client/ied_connection.c:3511,13'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/client/ied_connection.c:3522,9'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/client/ied_connection.c:3530,21'
          Dst:             MmsConnection_deleteAssociationSpecificNamedVariableList
        - Src:             'src/iec61850/client/ied_connection.c:3532,21'
          Dst:             MmsConnection_deleteNamedVariableList
        - Src:             'src/iec61850/client/ied_connection.c:3534,14'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    IedConnection_createDataSet
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3384
      functionLinenumberEnd: 3468
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          201
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - LinkedList_add
        - LinkedList_create
        - LinkedList_destroyDeep
        - LinkedList_getNext
        - MmsConnection_defineNamedVariableList
        - MmsConnection_defineNamedVariableListAssociationSpecific
        - MmsMapping_ObjectReferenceToVariableAccessSpec
        - MmsMapping_getMmsDomainFromObjectReference
        - MmsVariableAccessSpecification_destroy
        - StringUtils_copyStringToBuffer
        - StringUtils_replace
        - iedConnection_mapMmsErrorToIedError
        - strchr
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:3394,46'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:3405,24'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:3413,39'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3415,18'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3421,31'
          Dst:             StringUtils_copyStringToBuffer
        - Src:             'src/iec61850/client/ied_connection.c:3422,13'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/client/ied_connection.c:3434,33'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/client/ied_connection.c:3436,33'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:3441,17'
          Dst:             MmsMapping_ObjectReferenceToVariableAccessSpec
        - Src:             'src/iec61850/client/ied_connection.c:3449,9'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/client/ied_connection.c:3451,26'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:3455,9'
          Dst:             MmsConnection_defineNamedVariableListAssociationSpecific
        - Src:             'src/iec61850/client/ied_connection.c:3458,9'
          Dst:             MmsConnection_defineNamedVariableList
        - Src:             'src/iec61850/client/ied_connection.c:3461,14'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:3465,5'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/iec61850/client/ied_connection.c:3465,5'
          Dst:             MmsVariableAccessSpecification_destroy
    - functionName:    getDataDirectoryByFc
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3218
      functionLinenumberEnd: 3372
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         61
      ICount:          410
      EdgeCount:       83
      CyclomaticComplexity: 24
      functionsReached:
        - FunctionalConstraint_toString
        - IedConnection_getDeviceModelFromServer
        - LinkedList_create
        - LinkedList_getNext
        - Memory_free
        - Memory_malloc
        - StringUtils_copyStringMax
        - StringUtils_replace
        - addToStringSet
        - memcmp
        - strchr
        - strcmp
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:3221,9'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3227,22'
          Dst:             FunctionalConstraint_toString
        - Src:             'src/iec61850/client/ied_connection.c:3236,9'
          Dst:             IedConnection_getDeviceModelFromServer
        - Src:             'src/iec61850/client/ied_connection.c:3243,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/client/ied_connection.c:3245,19'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:3253,32'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:3265,32'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3273,5'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/client/ied_connection.c:3277,25'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:3285,13'
          Dst:             strcmp
        - Src:             'src/iec61850/client/ied_connection.c:3291,18'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:3300,27'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:3302,32'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/client/ied_connection.c:3308,23'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:3316,21'
          Dst:             memcmp
        - Src:             'src/iec61850/client/ied_connection.c:3321,35'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:3331,45'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3338,29'
          Dst:             memcmp
        - Src:             'src/iec61850/client/ied_connection.c:3342,55'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:3347,55'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3349,57'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/client/ied_connection.c:3356,38'
          Dst:             addToStringSet
        - Src:             'src/iec61850/client/ied_connection.c:3357,37'
          Dst:             Memory_free
        - Src:             'src/iec61850/client/ied_connection.c:3367,20'
          Dst:             LinkedList_getNext
    - functionName:    IedConnection_getDeviceModelFromServer
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1970
      functionLinenumberEnd: 2028
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          160
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - ICLogicalDevice_create
        - ICLogicalDevice_destroy
        - ICLogicalDevice_setVariableList
        - LinkedList_add
        - LinkedList_create
        - LinkedList_destroy
        - LinkedList_destroyDeep
        - LinkedList_getNext
        - MmsConnection_getDomainNames
        - MmsConnection_getDomainVariableNames
        - iedConnection_mapMmsErrorToIedError
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1976,37'
          Dst:             MmsConnection_getDomainNames
        - Src:             'src/iec61850/client/ied_connection.c:1982,13'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/iec61850/client/ied_connection.c:1982,13'
          Dst:             ICLogicalDevice_destroy
        - Src:             'src/iec61850/client/ied_connection.c:1986,36'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:1988,37'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/client/ied_connection.c:1994,36'
          Dst:             MmsConnection_getDomainVariableNames
        - Src:             'src/iec61850/client/ied_connection.c:1999,52'
          Dst:             ICLogicalDevice_create
        - Src:             'src/iec61850/client/ied_connection.c:2001,17'
          Dst:             ICLogicalDevice_setVariableList
        - Src:             'src/iec61850/client/ied_connection.c:2003,17'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/client/ied_connection.c:2008,30'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:2012,29'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2017,13'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/iec61850/client/ied_connection.c:2017,13'
          Dst:             ICLogicalDevice_destroy
        - Src:             'src/iec61850/client/ied_connection.c:2024,9'
          Dst:             LinkedList_destroy
        - Src:             'src/iec61850/client/ied_connection.c:2027,29'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    addToStringSet
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2646
      functionLinenumberEnd: 2659
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_getNext
        - LinkedList_insertAfter
        - strcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2649,12'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2651,28'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2651,13'
          Dst:             strcmp
        - Src:             'src/iec61850/client/ied_connection.c:2654,19'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2657,5'
          Dst:             LinkedList_insertAfter
    - functionName:    ICLogicalDevice_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 343
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_destroy
        - Memory_free
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:346,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/client/ied_connection.c:349,13'
          Dst:             LinkedList_destroy
        - Src:             'src/iec61850/client/ied_connection.c:351,9'
          Dst:             Memory_free
    - functionName:    ICLogicalDevice_create
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
        - StringUtils_copyString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:325,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/client/ied_connection.c:329,22'
          Dst:             StringUtils_copyString
    - functionName:    ICLogicalDevice_setVariableList
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedConnection_getDataDirectoryByFC
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3377
      functionLinenumberEnd: 3378
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - getDataDirectoryByFc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:3378,12'
          Dst:             getDataDirectoryByFc
    - functionName:    IedConnection_getDataDirectoryFC
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3211
      functionLinenumberEnd: 3212
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - getDataDirectory
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:3212,12'
          Dst:             getDataDirectory
    - functionName:    getDataDirectory
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3047
      functionLinenumberEnd: 3201
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         57
      ICount:          410
      EdgeCount:       77
      CyclomaticComplexity: 22
      functionsReached:
        - IedConnection_getDeviceModelFromServer
        - LinkedList_create
        - LinkedList_getNext
        - Memory_free
        - Memory_malloc
        - StringUtils_copyString
        - StringUtils_copyStringMax
        - StringUtils_replace
        - addToStringSet
        - memcmp
        - strchr
        - strcmp
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:3050,9'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3057,9'
          Dst:             IedConnection_getDeviceModelFromServer
        - Src:             'src/iec61850/client/ied_connection.c:3064,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/client/ied_connection.c:3066,19'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:3074,32'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:3086,32'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3094,5'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/client/ied_connection.c:3098,25'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:3106,13'
          Dst:             strcmp
        - Src:             'src/iec61850/client/ied_connection.c:3112,18'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:3121,27'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:3123,32'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/client/ied_connection.c:3129,23'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:3137,21'
          Dst:             memcmp
        - Src:             'src/iec61850/client/ied_connection.c:3142,35'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:3149,45'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3156,29'
          Dst:             memcmp
        - Src:             'src/iec61850/client/ied_connection.c:3160,55'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:3169,59'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:3171,55'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/client/ied_connection.c:3184,47'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/client/ied_connection.c:3186,34'
          Dst:             addToStringSet
        - Src:             'src/iec61850/client/ied_connection.c:3187,33'
          Dst:             Memory_free
        - Src:             'src/iec61850/client/ied_connection.c:3196,20'
          Dst:             LinkedList_getNext
    - functionName:    IedConnection_getDataDirectory
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3205
      functionLinenumberEnd: 3206
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - getDataDirectory
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:3206,12'
          Dst:             getDataDirectory
    - functionName:    IedConnection_getLogicalNodeVariables
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2956
      functionLinenumberEnd: 3042
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          208
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - IedConnection_getDeviceModelFromServer
        - LinkedList_add
        - LinkedList_create
        - LinkedList_getNext
        - StringUtils_copyString
        - StringUtils_copyStringMax
        - strchr
        - strcmp
        - strlen
        - strncmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2959,9'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:2966,9'
          Dst:             IedConnection_getDeviceModelFromServer
        - Src:             'src/iec61850/client/ied_connection.c:2973,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/client/ied_connection.c:2975,19'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:2991,25'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2999,13'
          Dst:             strcmp
        - Src:             'src/iec61850/client/ied_connection.c:3005,18'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:3017,27'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:3019,30'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/client/ied_connection.c:3025,23'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:3031,17'
          Dst:             strncmp
        - Src:             'src/iec61850/client/ied_connection.c:3033,45'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/client/ied_connection.c:3033,17'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/client/ied_connection.c:3037,20'
          Dst:             LinkedList_getNext
    - functionName:    addVariablesWithFc
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2663
      functionLinenumberEnd: 2697
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          118
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - LinkedList_getNext
        - StringUtils_copyString
        - addToStringSet
        - memcmp
        - strchr
        - strncmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2664,27'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2670,23'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:2674,17'
          Dst:             memcmp
        - Src:             'src/iec61850/client/ied_connection.c:2679,17'
          Dst:             strncmp
        - Src:             'src/iec61850/client/ied_connection.c:2681,34'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:2685,40'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:2688,53'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/client/ied_connection.c:2688,25'
          Dst:             addToStringSet
        - Src:             'src/iec61850/client/ied_connection.c:2695,20'
          Dst:             LinkedList_getNext
    - functionName:    getLogicalNodeDirectoryDataSets
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2748
      functionLinenumberEnd: 2789
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          111
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - LinkedList_add
        - LinkedList_create
        - LinkedList_destroy
        - LinkedList_getData
        - LinkedList_getNext
        - MmsConnection_getDomainVariableListNames
        - StringUtils_copyString
        - iedConnection_mapMmsErrorToIedError
        - strchr
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2753,27'
          Dst:             MmsConnection_getDomainVariableListNames
        - Src:             'src/iec61850/client/ied_connection.c:2757,18'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:2761,29'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/client/ied_connection.c:2763,26'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2767,37'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/client/ied_connection.c:2769,31'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:2776,17'
          Dst:             strcmp
        - Src:             'src/iec61850/client/ied_connection.c:2778,35'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/client/ied_connection.c:2779,17'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/client/ied_connection.c:2783,19'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2786,5'
          Dst:             LinkedList_destroy
    - functionName:    getLogicalNodeDirectoryLogs
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2702
      functionLinenumberEnd: 2743
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          111
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - LinkedList_add
        - LinkedList_create
        - LinkedList_destroy
        - LinkedList_getData
        - LinkedList_getNext
        - MmsConnection_getDomainJournals
        - StringUtils_copyString
        - iedConnection_mapMmsErrorToIedError
        - strchr
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2707,27'
          Dst:             MmsConnection_getDomainJournals
        - Src:             'src/iec61850/client/ied_connection.c:2711,18'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:2715,23'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/client/ied_connection.c:2717,26'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2721,37'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/client/ied_connection.c:2723,25'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:2730,17'
          Dst:             strcmp
        - Src:             'src/iec61850/client/ied_connection.c:2732,29'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/client/ied_connection.c:2733,17'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/client/ied_connection.c:2737,19'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2740,5'
          Dst:             LinkedList_destroy
    - functionName:    IedConnection_getLogicalNodeDirectory
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2794
      functionLinenumberEnd: 2951
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         64
      ICount:          394
      EdgeCount:       83
      CyclomaticComplexity: 21
      functionsReached:
        - IedConnection_getDeviceModelFromServer
        - LinkedList_add
        - LinkedList_create
        - LinkedList_getNext
        - Memory_free
        - StringUtils_copyString
        - StringUtils_copyStringMax
        - addToStringSet
        - addVariablesWithFc
        - getLogicalNodeDirectoryDataSets
        - getLogicalNodeDirectoryLogs
        - memcmp
        - strchr
        - strcmp
        - strlen
        - strncmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/iec61850/client/ied_connection.c:2860,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2797,9'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:2805,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/client/ied_connection.c:2807,19'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:2822,16'
          Dst:             getLogicalNodeDirectoryLogs
        - Src:             'src/iec61850/client/ied_connection.c:2825,16'
          Dst:             getLogicalNodeDirectoryDataSets
        - Src:             'src/iec61850/client/ied_connection.c:2828,9'
          Dst:             IedConnection_getDeviceModelFromServer
        - Src:             'src/iec61850/client/ied_connection.c:2835,25'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2843,13'
          Dst:             strcmp
        - Src:             'src/iec61850/client/ied_connection.c:2849,18'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2858,30'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/client/ied_connection.c:2864,35'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2870,31'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:2874,25'
          Dst:             memcmp
        - Src:             'src/iec61850/client/ied_connection.c:2877,25'
          Dst:             memcmp
        - Src:             'src/iec61850/client/ied_connection.c:2880,25'
          Dst:             memcmp
        - Src:             'src/iec61850/client/ied_connection.c:2885,25'
          Dst:             strncmp
        - Src:             'src/iec61850/client/ied_connection.c:2887,42'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:2891,48'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:2895,56'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/client/ied_connection.c:2897,38'
          Dst:             addToStringSet
        - Src:             'src/iec61850/client/ied_connection.c:2898,37'
          Dst:             Memory_free
        - Src:             'src/iec61850/client/ied_connection.c:2906,28'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2913,35'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2919,21'
          Dst:             strcmp
        - Src:             'src/iec61850/client/ied_connection.c:2920,57'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/client/ied_connection.c:2920,21'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/client/ied_connection.c:2922,28'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2928,9'
          Dst:             addVariablesWithFc
        - Src:             'src/iec61850/client/ied_connection.c:2932,9'
          Dst:             addVariablesWithFc
        - Src:             'src/iec61850/client/ied_connection.c:2936,9'
          Dst:             addVariablesWithFc
        - Src:             'src/iec61850/client/ied_connection.c:2940,9'
          Dst:             addVariablesWithFc
    - functionName:    IedConnection_getLogicalDeviceDirectory
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2602
      functionLinenumberEnd: 2642
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          129
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - IedConnection_getDeviceModelFromServer
        - LinkedList_add
        - LinkedList_create
        - LinkedList_getNext
        - StringUtils_copyString
        - strchr
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2606,9'
          Dst:             IedConnection_getDeviceModelFromServer
        - Src:             'src/iec61850/client/ied_connection.c:2611,32'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2617,13'
          Dst:             strcmp
        - Src:             'src/iec61850/client/ied_connection.c:2619,43'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/client/ied_connection.c:2621,35'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2627,21'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:2628,54'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/client/ied_connection.c:2628,21'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/client/ied_connection.c:2630,28'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2636,25'
          Dst:             LinkedList_getNext
    - functionName:    IedConnection_getServerDirectory
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2592
      functionLinenumberEnd: 2597
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - IedConnection_getFileDirectory
        - IedConnection_getLogicalDeviceList
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2594,16'
          Dst:             IedConnection_getFileDirectory
        - Src:             'src/iec61850/client/ied_connection.c:2596,16'
          Dst:             IedConnection_getLogicalDeviceList
    - functionName:    IedConnection_getFileDirectory
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2086
      functionLinenumberEnd: 2122
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          91
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - FileDirectoryEntry_destroy
        - LinkedList_create
        - LinkedList_destroyDeep
        - LinkedList_getData
        - LinkedList_getLastElement
        - MmsConnection_getFileDirectory
        - iedConnection_mapMmsErrorToIedError
        - mmsFileDirectoryHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2091,28'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/client/ied_connection.c:2100,17'
          Dst:             MmsConnection_getFileDirectory
        - Src:             'src/iec61850/client/ied_connection.c:2100,17'
          Dst:             mmsFileDirectoryHandler
        - Src:             'src/iec61850/client/ied_connection.c:2105,22'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:2106,13'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/iec61850/client/ied_connection.c:2106,13'
          Dst:             FileDirectoryEntry_destroy
        - Src:             'src/iec61850/client/ied_connection.c:2114,40'
          Dst:             LinkedList_getLastElement
        - Src:             'src/iec61850/client/ied_connection.c:2114,21'
          Dst:             LinkedList_getData
    - functionName:    IedConnection_getLogicalDeviceList
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2032
      functionLinenumberEnd: 2072
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          115
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - IedConnection_getDeviceModelFromServer
        - LinkedList_add
        - LinkedList_create
        - LinkedList_getNext
        - StringUtils_copyString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2037,9'
          Dst:             IedConnection_getDeviceModelFromServer
        - Src:             'src/iec61850/client/ied_connection.c:2045,36'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:2047,40'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/client/ied_connection.c:2053,39'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/client/ied_connection.c:2055,13'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/client/ied_connection.c:2057,29'
          Dst:             LinkedList_getNext
    - functionName:    mmsFileDirectoryHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2076
      functionLinenumberEnd: 2082
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - FileDirectoryEntry_create
        - LinkedList_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2079,44'
          Dst:             FileDirectoryEntry_create
        - Src:             'src/iec61850/client/ied_connection.c:2081,5'
          Dst:             LinkedList_add
    - functionName:    FileDirectoryEntry_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4698
      functionLinenumberEnd: 4704
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:4701,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/client/ied_connection.c:4702,9'
          Dst:             Memory_free
    - functionName:    IedConnection_deleteFileAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2562
      functionLinenumberEnd: 2587
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          79
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_fileDeleteAsync
        - deleteFileAndSetFileHandler
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2565,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:2576,5'
          Dst:             MmsConnection_fileDeleteAsync
        - Src:             'src/iec61850/client/ied_connection.c:2576,5'
          Dst:             deleteFileAndSetFileHandler
        - Src:             'src/iec61850/client/ied_connection.c:2578,14'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:2582,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    deleteFileAndSetFileHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2495
      functionLinenumberEnd: 2515
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - iedConnection_lookupOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2500,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:2506,52'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:2508,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_deleteFile
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2549
      functionLinenumberEnd: 2557
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsConnection_fileDelete
        - iedConnection_mapMmsErrorToIedError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2554,5'
          Dst:             MmsConnection_fileDelete
        - Src:             'src/iec61850/client/ied_connection.c:2556,14'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    IedConnection_setFileAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2520
      functionLinenumberEnd: 2545
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          82
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_obtainFileAsync
        - deleteFileAndSetFileHandler
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2523,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:2534,5'
          Dst:             MmsConnection_obtainFileAsync
        - Src:             'src/iec61850/client/ied_connection.c:2534,5'
          Dst:             deleteFileAndSetFileHandler
        - Src:             'src/iec61850/client/ied_connection.c:2536,14'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:2540,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_setFile
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2477
      functionLinenumberEnd: 2491
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsConnection_obtainFile
        - iedConnection_mapMmsErrorToIedError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2483,5'
          Dst:             MmsConnection_obtainFile
        - Src:             'src/iec61850/client/ied_connection.c:2486,18'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    IedConnection_setFilestoreBasepath
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2470
      functionLinenumberEnd: 2473
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsConnection_setFilestoreBasepath
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2472,5'
          Dst:             MmsConnection_setFilestoreBasepath
    - functionName:    mmsConnectionFileOpenHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2389
      functionLinenumberEnd: 2435
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - int
        - int
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          136
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - MmsConnection_fileCloseAsync
        - MmsConnection_fileReadAsync
        - iedConnection_lookupOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
        - mmsConnectionFileCloseHandler
        - mmsConnectionFileReadHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2395,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:2405,34'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:2409,13'
          Dst:             iedConnection_releaseOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:2414,13'
          Dst:             MmsConnection_fileReadAsync
        - Src:             'src/iec61850/client/ied_connection.c:2414,13'
          Dst:             mmsConnectionFileReadHandler
        - Src:             'src/iec61850/client/ied_connection.c:2418,38'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:2423,17'
          Dst:             MmsConnection_fileCloseAsync
        - Src:             'src/iec61850/client/ied_connection.c:2423,17'
          Dst:             mmsConnectionFileCloseHandler
        - Src:             'src/iec61850/client/ied_connection.c:2426,21'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_getFileAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2441
      functionLinenumberEnd: 2466
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          79
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_fileOpenAsync
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
        - mmsConnectionFileOpenHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2444,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:2455,5'
          Dst:             MmsConnection_fileOpenAsync
        - Src:             'src/iec61850/client/ied_connection.c:2455,5'
          Dst:             mmsConnectionFileOpenHandler
        - Src:             'src/iec61850/client/ied_connection.c:2457,14'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:2461,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    mmsFileReadHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2220
      functionLinenumberEnd: 2228
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedConnection_getFile
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2233
      functionLinenumberEnd: 2282
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          119
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - MmsConnection_fileClose
        - MmsConnection_fileOpen
        - MmsConnection_fileRead
        - iedConnection_mapMmsErrorToIedError
        - mmsFileReadHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2241,13'
          Dst:             MmsConnection_fileOpen
        - Src:             'src/iec61850/client/ied_connection.c:2245,18'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:2258,17'
          Dst:             MmsConnection_fileRead
        - Src:             'src/iec61850/client/ied_connection.c:2258,17'
          Dst:             mmsFileReadHandler
        - Src:             'src/iec61850/client/ied_connection.c:2263,22'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:2277,5'
          Dst:             MmsConnection_fileClose
        - Src:             'src/iec61850/client/ied_connection.c:2279,14'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    fileDirectoryHandlerEx
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2154
      functionLinenumberEnd: 2177
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - int
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          95
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - iedConnection_lookupOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2157,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:2166,64'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:2170,13'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_getFileDirectoryAsyncEx
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2182
      functionLinenumberEnd: 2209
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          86
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_getFileDirectoryAsync
        - fileDirectoryHandlerEx
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2185,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:2197,5'
          Dst:             MmsConnection_getFileDirectoryAsync
        - Src:             'src/iec61850/client/ied_connection.c:2197,5'
          Dst:             fileDirectoryHandlerEx
        - Src:             'src/iec61850/client/ied_connection.c:2200,14'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:2204,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_getFileDirectoryEx
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2127
      functionLinenumberEnd: 2149
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - FileDirectoryEntry_destroy
        - LinkedList_create
        - LinkedList_destroyDeep
        - MmsConnection_getFileDirectory
        - iedConnection_mapMmsErrorToIedError
        - mmsFileDirectoryHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:2132,28'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/client/ied_connection.c:2134,33'
          Dst:             MmsConnection_getFileDirectory
        - Src:             'src/iec61850/client/ied_connection.c:2134,33'
          Dst:             mmsFileDirectoryHandler
        - Src:             'src/iec61850/client/ied_connection.c:2139,18'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:2140,9'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/iec61850/client/ied_connection.c:2140,9'
          Dst:             FileDirectoryEntry_destroy
    - functionName:    IedConnection_writeVisibleStringValue
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1959
      functionLinenumberEnd: 1966
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IedConnection_writeObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1965,5'
          Dst:             IedConnection_writeObject
    - functionName:    IedConnection_writeObject
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1708
      functionLinenumberEnd: 1764
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          141
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - MmsConnection_writeSingleArrayElementWithComponent
        - MmsConnection_writeVariable
        - MmsMapping_createMmsVariableNameFromObjectReference
        - MmsMapping_getMmsDomainFromObjectReference
        - iedConnection_mapMmsErrorToIedError
        - strchr
        - strlen
        - strtol
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1715,16'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:1716,14'
          Dst:             MmsMapping_createMmsVariableNameFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:1727,19'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:1731,29'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:1737,31'
          Dst:             strtol
        - Src:             'src/iec61850/client/ied_connection.c:1743,21'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:1748,17'
          Dst:             MmsConnection_writeSingleArrayElementWithComponent
        - Src:             'src/iec61850/client/ied_connection.c:1750,26'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1760,9'
          Dst:             MmsConnection_writeVariable
        - Src:             'src/iec61850/client/ied_connection.c:1762,18'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    strtol
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedConnection_writeOctetString
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1947
      functionLinenumberEnd: 1954
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IedConnection_writeObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1953,5'
          Dst:             IedConnection_writeObject
    - functionName:    IedConnection_writeFloatValue
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1934
      functionLinenumberEnd: 1942
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - float
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IedConnection_writeObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1941,5'
          Dst:             IedConnection_writeObject
    - functionName:    IedConnection_writeUnsigned32Value
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1913
      functionLinenumberEnd: 1929
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IedConnection_writeObject
        - MmsValue_setUint32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1926,5'
          Dst:             MmsValue_setUint32
        - Src:             'src/iec61850/client/ied_connection.c:1928,5'
          Dst:             IedConnection_writeObject
    - functionName:    IedConnection_writeInt32Value
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1892
      functionLinenumberEnd: 1908
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IedConnection_writeObject
        - MmsValue_setInt32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1905,5'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/client/ied_connection.c:1907,5'
          Dst:             IedConnection_writeObject
    - functionName:    IedConnection_writeBooleanValue
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1880
      functionLinenumberEnd: 1887
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IedConnection_writeObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1886,5'
          Dst:             IedConnection_writeObject
    - functionName:    writeVariableHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1768
      functionLinenumberEnd: 1791
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - iedConnection_lookupOutstandingCall
        - iedConnection_mapDataAccessErrorToIedError
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1771,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:1777,35'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1780,24'
          Dst:             iedConnection_mapDataAccessErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1784,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    iedConnection_mapDataAccessErrorToIedError
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          87
      EdgeCount:       32
      CyclomaticComplexity: 17
      functionsReached: []
      functionUses:    14
      BranchProfiles:
        - Branch String:   'src/iec61850/client/ied_connection.c:216,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    IedConnection_writeObjectAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1796
      functionLinenumberEnd: 1875
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          202
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - MmsConnection_writeSingleArrayElementWithComponentAsync
        - MmsConnection_writeVariableAsync
        - MmsMapping_createMmsVariableNameFromObjectReference
        - MmsMapping_getMmsDomainFromObjectReference
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
        - strchr
        - strlen
        - strtol
        - writeVariableHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1805,16'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:1806,14'
          Dst:             MmsMapping_createMmsVariableNameFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:1814,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:1829,19'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:1833,29'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:1839,31'
          Dst:             strtol
        - Src:             'src/iec61850/client/ied_connection.c:1845,21'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:1850,17'
          Dst:             MmsConnection_writeSingleArrayElementWithComponentAsync
        - Src:             'src/iec61850/client/ied_connection.c:1850,17'
          Dst:             writeVariableHandler
        - Src:             'src/iec61850/client/ied_connection.c:1853,26'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1863,9'
          Dst:             MmsConnection_writeVariableAsync
        - Src:             'src/iec61850/client/ied_connection.c:1863,9'
          Dst:             writeVariableHandler
        - Src:             'src/iec61850/client/ied_connection.c:1865,18'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1870,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_readQualityValue
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1681
      functionLinenumberEnd: 1702
      functionDepth:   0
      returnType:      short
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          85
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IedConnection_readObject
        - MmsValue_delete
        - MmsValue_getBitStringSize
        - MmsValue_getDataAccessError
        - MmsValue_getType
        - Quality_fromMmsValue
        - iedConnection_mapDataAccessErrorToIedError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1682,23'
          Dst:             IedConnection_readObject
        - Src:             'src/iec61850/client/ied_connection.c:1688,14'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1688,61'
          Dst:             MmsValue_getBitStringSize
        - Src:             'src/iec61850/client/ied_connection.c:1689,23'
          Dst:             Quality_fromMmsValue
        - Src:             'src/iec61850/client/ied_connection.c:1693,17'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1694,69'
          Dst:             MmsValue_getDataAccessError
        - Src:             'src/iec61850/client/ied_connection.c:1694,26'
          Dst:             iedConnection_mapDataAccessErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1699,9'
          Dst:             MmsValue_delete
    - functionName:    IedConnection_readObject
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1436
      functionLinenumberEnd: 1494
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          157
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - MmsConnection_readSingleArrayElementWithComponent
        - MmsConnection_readVariable
        - MmsMapping_createMmsVariableNameFromObjectReference
        - MmsMapping_getMmsDomainFromObjectReference
        - iedConnection_mapMmsErrorToIedError
        - strchr
        - strlen
        - strtol
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1444,16'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:1445,14'
          Dst:             MmsMapping_createMmsVariableNameFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:1456,19'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:1460,29'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:1466,31'
          Dst:             strtol
        - Src:             'src/iec61850/client/ied_connection.c:1472,21'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:1477,25'
          Dst:             MmsConnection_readSingleArrayElementWithComponent
        - Src:             'src/iec61850/client/ied_connection.c:1486,17'
          Dst:             MmsConnection_readVariable
        - Src:             'src/iec61850/client/ied_connection.c:1491,18'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    IedConnection_readTimestampValue
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1649
      functionLinenumberEnd: 1676
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          99
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - IedConnection_readObject
        - Memory_malloc
        - MmsValue_delete
        - MmsValue_getDataAccessError
        - MmsValue_getType
        - iedConnection_mapDataAccessErrorToIedError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1650,23'
          Dst:             IedConnection_readObject
        - Src:             'src/iec61850/client/ied_connection.c:1656,13'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1659,39'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/client/ied_connection.c:1666,17'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1667,69'
          Dst:             MmsValue_getDataAccessError
        - Src:             'src/iec61850/client/ied_connection.c:1667,26'
          Dst:             iedConnection_mapDataAccessErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1672,9'
          Dst:             MmsValue_delete
    - functionName:    IedConnection_readInt64Value
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1623
      functionLinenumberEnd: 1643
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          82
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IedConnection_readObject
        - MmsValue_delete
        - MmsValue_getDataAccessError
        - MmsValue_getType
        - MmsValue_toInt64
        - iedConnection_mapDataAccessErrorToIedError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1624,23'
          Dst:             IedConnection_readObject
        - Src:             'src/iec61850/client/ied_connection.c:1630,14'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1630,58'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1631,22'
          Dst:             MmsValue_toInt64
        - Src:             'src/iec61850/client/ied_connection.c:1634,17'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1635,69'
          Dst:             MmsValue_getDataAccessError
        - Src:             'src/iec61850/client/ied_connection.c:1635,26'
          Dst:             iedConnection_mapDataAccessErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1640,9'
          Dst:             MmsValue_delete
    - functionName:    IedConnection_readUnsigned32Value
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1598
      functionLinenumberEnd: 1618
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          82
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IedConnection_readObject
        - MmsValue_delete
        - MmsValue_getDataAccessError
        - MmsValue_getType
        - MmsValue_toUint32
        - iedConnection_mapDataAccessErrorToIedError
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1599,23'
          Dst:             IedConnection_readObject
        - Src:             'src/iec61850/client/ied_connection.c:1605,14'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1605,58'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1606,22'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/client/ied_connection.c:1609,17'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1610,69'
          Dst:             MmsValue_getDataAccessError
        - Src:             'src/iec61850/client/ied_connection.c:1610,26'
          Dst:             iedConnection_mapDataAccessErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1615,9'
          Dst:             MmsValue_delete
    - functionName:    IedConnection_readInt32Value
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1573
      functionLinenumberEnd: 1593
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          82
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IedConnection_readObject
        - MmsValue_delete
        - MmsValue_getDataAccessError
        - MmsValue_getType
        - MmsValue_toInt32
        - iedConnection_mapDataAccessErrorToIedError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1574,23'
          Dst:             IedConnection_readObject
        - Src:             'src/iec61850/client/ied_connection.c:1580,14'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1580,58'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1581,22'
          Dst:             MmsValue_toInt32
        - Src:             'src/iec61850/client/ied_connection.c:1584,17'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1585,69'
          Dst:             MmsValue_getDataAccessError
        - Src:             'src/iec61850/client/ied_connection.c:1585,26'
          Dst:             iedConnection_mapDataAccessErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1590,9'
          Dst:             MmsValue_delete
    - functionName:    IedConnection_readStringValue
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1548
      functionLinenumberEnd: 1568
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          83
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IedConnection_readObject
        - MmsValue_delete
        - MmsValue_getDataAccessError
        - MmsValue_getType
        - MmsValue_toString
        - StringUtils_copyString
        - iedConnection_mapDataAccessErrorToIedError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1549,23'
          Dst:             IedConnection_readObject
        - Src:             'src/iec61850/client/ied_connection.c:1555,14'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1555,65'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1556,45'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/client/ied_connection.c:1556,22'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/client/ied_connection.c:1559,17'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1560,69'
          Dst:             MmsValue_getDataAccessError
        - Src:             'src/iec61850/client/ied_connection.c:1560,26'
          Dst:             iedConnection_mapDataAccessErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1565,9'
          Dst:             MmsValue_delete
    - functionName:    IedConnection_readFloatValue
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1523
      functionLinenumberEnd: 1543
      functionDepth:   0
      returnType:      float
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - IedConnection_readObject
        - MmsValue_delete
        - MmsValue_getDataAccessError
        - MmsValue_getType
        - MmsValue_toFloat
        - iedConnection_mapDataAccessErrorToIedError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1524,23'
          Dst:             IedConnection_readObject
        - Src:             'src/iec61850/client/ied_connection.c:1530,13'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1531,22'
          Dst:             MmsValue_toFloat
        - Src:             'src/iec61850/client/ied_connection.c:1534,17'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1535,69'
          Dst:             MmsValue_getDataAccessError
        - Src:             'src/iec61850/client/ied_connection.c:1535,26'
          Dst:             iedConnection_mapDataAccessErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1540,9'
          Dst:             MmsValue_delete
    - functionName:    IedConnection_readBooleanValue
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1498
      functionLinenumberEnd: 1518
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          74
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - IedConnection_readObject
        - MmsValue_delete
        - MmsValue_getBoolean
        - MmsValue_getDataAccessError
        - MmsValue_getType
        - iedConnection_mapDataAccessErrorToIedError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1499,23'
          Dst:             IedConnection_readObject
        - Src:             'src/iec61850/client/ied_connection.c:1505,13'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1506,22'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/client/ied_connection.c:1509,17'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/ied_connection.c:1510,69'
          Dst:             MmsValue_getDataAccessError
        - Src:             'src/iec61850/client/ied_connection.c:1510,26'
          Dst:             iedConnection_mapDataAccessErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1515,9'
          Dst:             MmsValue_delete
    - functionName:    readObjectHandlerInternal
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1331
      functionLinenumberEnd: 1349
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - iedConnection_lookupOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1334,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:1340,52'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1342,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_readObjectAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1354
      functionLinenumberEnd: 1431
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          213
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - MmsConnection_readSingleArrayElementWithComponentAsync
        - MmsConnection_readVariableAsync
        - MmsMapping_createMmsVariableNameFromObjectReference
        - MmsMapping_getMmsDomainFromObjectReference
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
        - readObjectHandlerInternal
        - strchr
        - strlen
        - strtol
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1363,16'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:1364,14'
          Dst:             MmsMapping_createMmsVariableNameFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:1372,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:1386,19'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:1390,29'
          Dst:             strchr
        - Src:             'src/iec61850/client/ied_connection.c:1396,31'
          Dst:             strtol
        - Src:             'src/iec61850/client/ied_connection.c:1402,21'
          Dst:             strlen
        - Src:             'src/iec61850/client/ied_connection.c:1407,17'
          Dst:             MmsConnection_readSingleArrayElementWithComponentAsync
        - Src:             'src/iec61850/client/ied_connection.c:1407,17'
          Dst:             readObjectHandlerInternal
        - Src:             'src/iec61850/client/ied_connection.c:1416,9'
          Dst:             MmsConnection_readVariableAsync
        - Src:             'src/iec61850/client/ied_connection.c:1416,9'
          Dst:             readObjectHandlerInternal
        - Src:             'src/iec61850/client/ied_connection.c:1422,22'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1425,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_getLogicalDeviceDataSetsAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1298
      functionLinenumberEnd: 1327
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          88
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_getDomainVariableListNamesAsync
        - getNameListHandler
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1299,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:1312,5'
          Dst:             MmsConnection_getDomainVariableListNamesAsync
        - Src:             'src/iec61850/client/ied_connection.c:1312,5'
          Dst:             getNameListHandler
        - Src:             'src/iec61850/client/ied_connection.c:1316,18'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1318,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    getNameListHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1201
      functionLinenumberEnd: 1220
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - iedConnection_lookupOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1204,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:1210,52'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1213,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_getLogicalDeviceVariablesAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1262
      functionLinenumberEnd: 1293
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          88
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_getDomainVariableNamesAsync
        - getNameListHandler
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1263,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:1276,5'
          Dst:             MmsConnection_getDomainVariableNamesAsync
        - Src:             'src/iec61850/client/ied_connection.c:1276,5'
          Dst:             getNameListHandler
        - Src:             'src/iec61850/client/ied_connection.c:1281,18'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1283,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_getServerDirectoryAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1225
      functionLinenumberEnd: 1256
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_getDomainNamesAsync
        - getNameListHandler
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1226,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:1239,5'
          Dst:             MmsConnection_getDomainNamesAsync
        - Src:             'src/iec61850/client/ied_connection.c:1239,5'
          Dst:             getNameListHandler
        - Src:             'src/iec61850/client/ied_connection.c:1244,18'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1246,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    getAccessAttrHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1133
      functionLinenumberEnd: 1151
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - iedConnection_lookupOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1136,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:1142,52'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1144,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_getVariableSpecificationAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1156
      functionLinenumberEnd: 1197
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          116
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - MmsConnection_getVariableAccessAttributesAsync
        - MmsMapping_createMmsVariableNameFromObjectReference
        - MmsMapping_getMmsDomainFromObjectReference
        - getAccessAttrHandler
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1167,16'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:1168,14'
          Dst:             MmsMapping_createMmsVariableNameFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:1176,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/ied_connection.c:1187,5'
          Dst:             MmsConnection_getVariableAccessAttributesAsync
        - Src:             'src/iec61850/client/ied_connection.c:1187,5'
          Dst:             getAccessAttrHandler
        - Src:             'src/iec61850/client/ied_connection.c:1191,14'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/ied_connection.c:1194,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    IedConnection_getVariableSpecification
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1099
      functionLinenumberEnd: 1128
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          78
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsConnection_getVariableAccessAttributes
        - MmsMapping_createMmsVariableNameFromObjectReference
        - MmsMapping_getMmsDomainFromObjectReference
        - iedConnection_mapMmsErrorToIedError
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1109,16'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:1110,14'
          Dst:             MmsMapping_createMmsVariableNameFromObjectReference
        - Src:             'src/iec61850/client/ied_connection.c:1119,13'
          Dst:             MmsConnection_getVariableAccessAttributes
        - Src:             'src/iec61850/client/ied_connection.c:1124,18'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    IedConnection_getLogicalDeviceDataSets
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1086
      functionLinenumberEnd: 1093
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsConnection_getDomainVariableListNames
        - iedConnection_mapMmsErrorToIedError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1089,25'
          Dst:             MmsConnection_getDomainVariableListNames
        - Src:             'src/iec61850/client/ied_connection.c:1091,14'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    IedConnection_getLogicalDeviceVariables
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1074
      functionLinenumberEnd: 1081
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsConnection_getDomainVariableNames
        - iedConnection_mapMmsErrorToIedError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1077,25'
          Dst:             MmsConnection_getDomainVariableNames
        - Src:             'src/iec61850/client/ied_connection.c:1079,14'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    deleteControlObjectClients
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1025
      functionLinenumberEnd: 1040
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          56
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ControlObjectClient_destroy
        - LinkedList_getData
        - LinkedList_getNext
        - LinkedList_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1026,12'
          Dst:             LinkedList_size
        - Src:             'src/iec61850/client/ied_connection.c:1028,27'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/ied_connection.c:1032,65'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/client/ied_connection.c:1036,17'
          Dst:             ControlObjectClient_destroy
    - functionName:    IedConnection_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1044
      functionLinenumberEnd: 1070
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ClientReport_destroy
        - ICLogicalDevice_destroy
        - IedConnection_close
        - LinkedList_destroyDeep
        - LinkedList_destroyStatic
        - Memory_free
        - MmsConnection_destroy
        - Semaphore_destroy
        - deleteControlObjectClients
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1047,9'
          Dst:             IedConnection_close
        - Src:             'src/iec61850/client/ied_connection.c:1049,9'
          Dst:             MmsConnection_destroy
        - Src:             'src/iec61850/client/ied_connection.c:1052,13'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/iec61850/client/ied_connection.c:1052,13'
          Dst:             ICLogicalDevice_destroy
        - Src:             'src/iec61850/client/ied_connection.c:1055,13'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/iec61850/client/ied_connection.c:1055,13'
          Dst:             ClientReport_destroy
        - Src:             'src/iec61850/client/ied_connection.c:1057,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/client/ied_connection.c:1059,9'
          Dst:             deleteControlObjectClients
        - Src:             'src/iec61850/client/ied_connection.c:1061,9'
          Dst:             LinkedList_destroyStatic
        - Src:             'src/iec61850/client/ied_connection.c:1063,9'
          Dst:             Semaphore_destroy
        - Src:             'src/iec61850/client/ied_connection.c:1064,9'
          Dst:             Semaphore_destroy
        - Src:             'src/iec61850/client/ied_connection.c:1065,9'
          Dst:             Semaphore_destroy
        - Src:             'src/iec61850/client/ied_connection.c:1066,9'
          Dst:             Semaphore_destroy
        - Src:             'src/iec61850/client/ied_connection.c:1068,9'
          Dst:             Memory_free
    - functionName:    IedConnection_close
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1015
      functionLinenumberEnd: 1021
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - IedConnection_getState
        - IedConnection_setState
        - MmsConnection_close
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1016,9'
          Dst:             IedConnection_getState
        - Src:             'src/iec61850/client/ied_connection.c:1018,9'
          Dst:             IedConnection_setState
        - Src:             'src/iec61850/client/ied_connection.c:1019,9'
          Dst:             MmsConnection_close
    - functionName:    IedConnection_getState
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 885
      functionLinenumberEnd: 892
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:888,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/client/ied_connection.c:890,5'
          Dst:             Semaphore_post
    - functionName:    IedConnection_releaseAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1000
      functionLinenumberEnd: 1011
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - IedConnection_getState
        - MmsConnection_concludeAsync
        - iedConnection_mapMmsErrorToIedError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:1001,9'
          Dst:             IedConnection_getState
        - Src:             'src/iec61850/client/ied_connection.c:1005,9'
          Dst:             MmsConnection_concludeAsync
        - Src:             'src/iec61850/client/ied_connection.c:1007,18'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    IedConnection_release
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 985
      functionLinenumberEnd: 996
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - IedConnection_getState
        - MmsConnection_conclude
        - iedConnection_mapMmsErrorToIedError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:986,9'
          Dst:             IedConnection_getState
        - Src:             'src/iec61850/client/ied_connection.c:990,9'
          Dst:             MmsConnection_conclude
        - Src:             'src/iec61850/client/ied_connection.c:992,18'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    IedConnection_abortAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 970
      functionLinenumberEnd: 981
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - IedConnection_getState
        - MmsConnection_abortAsync
        - iedConnection_mapMmsErrorToIedError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:971,9'
          Dst:             IedConnection_getState
        - Src:             'src/iec61850/client/ied_connection.c:975,9'
          Dst:             MmsConnection_abortAsync
        - Src:             'src/iec61850/client/ied_connection.c:977,18'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    IedConnection_abort
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 953
      functionLinenumberEnd: 966
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - IedConnection_getState
        - IedConnection_setState
        - MmsConnection_abort
        - iedConnection_mapMmsErrorToIedError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:954,9'
          Dst:             IedConnection_getState
        - Src:             'src/iec61850/client/ied_connection.c:956,9'
          Dst:             IedConnection_setState
        - Src:             'src/iec61850/client/ied_connection.c:960,9'
          Dst:             MmsConnection_abort
        - Src:             'src/iec61850/client/ied_connection.c:962,18'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    IedConnection_connectAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 936
      functionLinenumberEnd: 949
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - IedConnection_getState
        - MmsConnection_connectAsync
        - MmsConnection_setConnectTimeout
        - iedConnection_mapMmsErrorToIedError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:937,9'
          Dst:             IedConnection_getState
        - Src:             'src/iec61850/client/ied_connection.c:941,9'
          Dst:             MmsConnection_setConnectTimeout
        - Src:             'src/iec61850/client/ied_connection.c:943,9'
          Dst:             MmsConnection_connectAsync
        - Src:             'src/iec61850/client/ied_connection.c:945,18'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    IedConnection_installStateChangedHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 929
      functionLinenumberEnd: 932
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedConnection_connect
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 905
      functionLinenumberEnd: 925
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - IedConnection_getState
        - IedConnection_setState
        - MmsConnection_connect
        - MmsConnection_setConnectTimeout
        - iedConnection_mapMmsErrorToIedError
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:906,9'
          Dst:             IedConnection_getState
        - Src:             'src/iec61850/client/ied_connection.c:910,9'
          Dst:             MmsConnection_setConnectTimeout
        - Src:             'src/iec61850/client/ied_connection.c:912,13'
          Dst:             MmsConnection_connect
        - Src:             'src/iec61850/client/ied_connection.c:915,13'
          Dst:             IedConnection_setState
        - Src:             'src/iec61850/client/ied_connection.c:919,13'
          Dst:             IedConnection_setState
        - Src:             'src/iec61850/client/ied_connection.c:920,22'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    IedConnection_installConnectionClosedHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 898
      functionLinenumberEnd: 901
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedConnection_setTimeQuality
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 866
      functionLinenumberEnd: 881
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - bool
        - bool
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedConnection_getRequestTimeout
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 856
      functionLinenumberEnd: 862
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsConnection_getRequestTimeout
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:858,16'
          Dst:             MmsConnection_getRequestTimeout
    - functionName:    IedConnection_setRequestTimeout
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 847
      functionLinenumberEnd: 852
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsConnection_setRequestTimeout
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:850,9'
          Dst:             MmsConnection_setRequestTimeout
    - functionName:    IedConnection_setConnectTimeout
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 841
      functionLinenumberEnd: 843
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedConnection_setTLSConfiguration
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 832
      functionLinenumberEnd: 837
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsConnection_setTLSConfiguration
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:835,9'
          Dst:             MmsConnection_setTLSConfiguration
    - functionName:    IedConnection_setMaxOutstandingCalls
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 809
      functionLinenumberEnd: 828
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          89
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - Memory_calloc
        - Memory_free
        - MmsConnnection_setMaxOutstandingCalls
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:818,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/client/ied_connection.c:822,60'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/client/ied_connection.c:826,9'
          Dst:             MmsConnnection_setMaxOutstandingCalls
    - functionName:    IedConnection_setLocalAddress
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 800
      functionLinenumberEnd: 805
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IsoConnectionParameters_setLocalTcpParameters
        - MmsConnection_getIsoConnectionParameters
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:802,36'
          Dst:             MmsConnection_getIsoConnectionParameters
        - Src:             'src/iec61850/client/ied_connection.c:804,5'
          Dst:             IsoConnectionParameters_setLocalTcpParameters
    - functionName:    IedConnection_tick
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 794
      functionLinenumberEnd: 795
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsConnection_tick
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:795,12'
          Dst:             MmsConnection_tick
    - functionName:    IedConnection_createEx
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 788
      functionLinenumberEnd: 789
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - createNewConnectionObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:789,12'
          Dst:             createNewConnectionObject
    - functionName:    createNewConnectionObject
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 739
      functionLinenumberEnd: 771
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_create
        - Memory_calloc
        - MmsConnection_createNonThreaded
        - MmsConnection_createSecure
        - MmsConnection_setConnectionStateChangedHandler
        - MmsConnection_setInformationReportHandler
        - Semaphore_create
        - informationReportHandler
        - mmsConnectionStateChangedHandler
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:740,42'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/client/ied_connection.c:744,32'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/client/ied_connection.c:746,36'
          Dst:             Semaphore_create
        - Src:             'src/iec61850/client/ied_connection.c:747,32'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/client/ied_connection.c:751,32'
          Dst:             MmsConnection_createSecure
        - Src:             'src/iec61850/client/ied_connection.c:753,32'
          Dst:             MmsConnection_createNonThreaded
        - Src:             'src/iec61850/client/ied_connection.c:757,28'
          Dst:             Semaphore_create
        - Src:             'src/iec61850/client/ied_connection.c:758,36'
          Dst:             Semaphore_create
        - Src:             'src/iec61850/client/ied_connection.c:760,38'
          Dst:             Semaphore_create
        - Src:             'src/iec61850/client/ied_connection.c:762,65'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/client/ied_connection.c:766,9'
          Dst:             MmsConnection_setInformationReportHandler
        - Src:             'src/iec61850/client/ied_connection.c:766,9'
          Dst:             informationReportHandler
        - Src:             'src/iec61850/client/ied_connection.c:768,9'
          Dst:             MmsConnection_setConnectionStateChangedHandler
        - Src:             'src/iec61850/client/ied_connection.c:768,9'
          Dst:             mmsConnectionStateChangedHandler
    - functionName:    IedConnection_createWithTlsSupport
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 782
      functionLinenumberEnd: 783
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - createNewConnectionObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:783,12'
          Dst:             createNewConnectionObject
    - functionName:    IedConnection_create
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 776
      functionLinenumberEnd: 777
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - createNewConnectionObject
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:777,12'
          Dst:             createNewConnectionObject
    - functionName:    ClientDataSet_getDataSetSize
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_getArraySize
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:410,16'
          Dst:             MmsValue_getArraySize
    - functionName:    ClientDataSet_getReference
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 402
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientDataSet_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 385
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_free
        - MmsValue_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/ied_connection.c:379,13'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/ied_connection.c:381,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/client/ied_connection.c:383,9'
          Dst:             Memory_free
    - functionName:    IedClientError_toString
      functionSourceFile: '/src/libiec61850/src/iec61850/client/ied_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         31
      ICount:          157
      EdgeCount:       60
      CyclomaticComplexity: 31
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/iec61850/client/ied_connection.c:59,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    iedConnection_handleReport
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 394
      functionLinenumberEnd: 857
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         198
      ICount:          1210
      EdgeCount:       267
      CyclomaticComplexity: 71
      functionsReached:
        - LinkedList_getNext
        - Memory_free
        - Memory_malloc
        - MmsValue_clone
        - MmsValue_createEmptyArray
        - MmsValue_delete
        - MmsValue_getBinaryTimeAsUtcMs
        - MmsValue_getBitStringBit
        - MmsValue_getBitStringSize
        - MmsValue_getBoolean
        - MmsValue_getElement
        - MmsValue_getNumberOfSetBits
        - MmsValue_getStringSize
        - MmsValue_getType
        - MmsValue_setElement
        - MmsValue_toString
        - MmsValue_toUint32
        - MmsValue_update
        - Semaphore_post
        - Semaphore_wait
        - StringUtils_concatString
        - StringUtils_copyStringMax
        - StringUtils_replace
        - strcmp
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_report.c:395,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/client/client_report.c:397,28'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/client_report.c:399,34'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_report.c:407,26'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/client_report.c:416,33'
          Dst:             strlen
        - Src:             'src/iec61850/client/client_report.c:418,13'
          Dst:             StringUtils_concatString
        - Src:             'src/iec61850/client/client_report.c:419,13'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/client/client_report.c:424,20'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/client/client_report.c:424,13'
          Dst:             strcmp
        - Src:             'src/iec61850/client/client_report.c:430,19'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/client_report.c:448,25'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/client_report.c:450,31'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_report.c:461,9'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/client/client_report.c:463,28'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/client_report.c:465,34'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_report.c:473,44'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/client/client_report.c:480,9'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/client/client_report.c:482,36'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/client_report.c:484,42'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_report.c:493,37'
          Dst:             MmsValue_getBinaryTimeAsUtcMs
        - Src:             'src/iec61850/client/client_report.c:502,9'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/client/client_report.c:506,33'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/client_report.c:508,39'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_report.c:516,31'
          Dst:             MmsValue_getStringSize
        - Src:             'src/iec61850/client/client_report.c:521,42'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/client/client_report.c:525,54'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/client/client_report.c:541,55'
          Dst:             MmsValue_getStringSize
        - Src:             'src/iec61850/client/client_report.c:543,21'
          Dst:             Memory_free
        - Src:             'src/iec61850/client/client_report.c:545,58'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/client/client_report.c:561,13'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/client/client_report.c:578,9'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/client/client_report.c:580,33'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/client_report.c:582,39'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_report.c:591,39'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/client/client_report.c:597,9'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/client/client_report.c:599,29'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/client_report.c:601,35'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_report.c:611,18'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/client/client_report.c:613,17'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/client_report.c:614,43'
          Dst:             MmsValue_clone
        - Src:             'src/iec61850/client/client_report.c:619,39'
          Dst:             MmsValue_clone
        - Src:             'src/iec61850/client/client_report.c:626,9'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/client/client_report.c:628,29'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/client_report.c:630,35'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_report.c:638,35'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/client/client_report.c:645,9'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/client/client_report.c:647,31'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/client_report.c:650,37'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_report.c:659,51'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/client/client_report.c:662,40'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/client_report.c:665,46'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_report.c:667,41'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_report.c:677,51'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/client/client_report.c:688,27'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/client_report.c:690,33'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_report.c:698,23'
          Dst:             MmsValue_getBitStringSize
        - Src:             'src/iec61850/client/client_report.c:715,28'
          Dst:             MmsValue_getNumberOfSetBits
        - Src:             'src/iec61850/client/client_report.c:723,9'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/client/client_report.c:726,46'
          Dst:             MmsValue_createEmptyArray
        - Src:             'src/iec61850/client/client_report.c:734,17'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/client/client_report.c:736,44'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/client_report.c:740,46'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/client_report.c:742,52'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_report.c:749,42'
          Dst:             MmsValue_clone
        - Src:             'src/iec61850/client/client_report.c:751,25'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_report.c:764,41'
          Dst:             MmsValue_createEmptyArray
        - Src:             'src/iec61850/client/client_report.c:766,34'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/client/client_report.c:783,34'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/client/client_report.c:790,13'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/client/client_report.c:792,40'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/client_report.c:794,41'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/client_report.c:805,55'
          Dst:             MmsValue_clone
        - Src:             'src/iec61850/client/client_report.c:805,17'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_report.c:807,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/client/client_report.c:814,48'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/client_report.c:816,54'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_report.c:826,21'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/client/client_report.c:828,21'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/client/client_report.c:830,21'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/client/client_report.c:832,21'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/client/client_report.c:834,21'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/client/client_report.c:855,5'
          Dst:             Semaphore_post
    - functionName:    IedConnection_triggerGIReport
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 390
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - IedConnection_getMmsConnection
        - MmsConnection_writeVariable
        - MmsMapping_getMmsDomainFromObjectReference
        - MmsValue_delete
        - MmsValue_newBoolean
        - StringUtils_appendString
        - StringUtils_concatString
        - StringUtils_replace
        - iedConnection_mapMmsErrorToIedError
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_report.c:361,5'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/client_report.c:363,57'
          Dst:             strlen
        - Src:             'src/iec61850/client/client_report.c:363,5'
          Dst:             StringUtils_concatString
        - Src:             'src/iec61850/client/client_report.c:365,5'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/client/client_report.c:367,5'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/client/client_report.c:369,28'
          Dst:             IedConnection_getMmsConnection
        - Src:             'src/iec61850/client/client_report.c:373,20'
          Dst:             MmsValue_newBoolean
        - Src:             'src/iec61850/client/client_report.c:375,5'
          Dst:             MmsConnection_writeVariable
        - Src:             'src/iec61850/client/client_report.c:377,5'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/client_report.c:384,18'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    IedConnection_uninstallReportHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
        - uninstallReportHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_report.c:348,2'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/client/client_report.c:350,5'
          Dst:             uninstallReportHandler
        - Src:             'src/iec61850/client/client_report.c:352,5'
          Dst:             Semaphore_post
    - functionName:    uninstallReportHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ClientReport_destroy
        - LinkedList_remove
        - lookupReportHandler
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_report.c:298,27'
          Dst:             lookupReportHandler
        - Src:             'src/iec61850/client/client_report.c:302,9'
          Dst:             LinkedList_remove
        - Src:             'src/iec61850/client/client_report.c:303,9'
          Dst:             ClientReport_destroy
    - functionName:    lookupReportHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_getNext
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_report.c:280,26'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/client/client_report.c:286,13'
          Dst:             strcmp
        - Src:             'src/iec61850/client/client_report.c:289,19'
          Dst:             LinkedList_getNext
    - functionName:    ClientReport_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          129
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - Memory_free
        - MmsValue_delete
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_report.c:110,13'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/client_report.c:112,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/client/client_report.c:115,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/client/client_report.c:118,13'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/client_report.c:121,13'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/client_report.c:124,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/client/client_report.c:127,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/client/client_report.c:129,9'
          Dst:             Memory_free
    - functionName:    IedConnection_installReportHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          95
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ClientReport_create
        - LinkedList_add
        - Semaphore_post
        - Semaphore_wait
        - StringUtils_copyString
        - lookupReportHandler
        - uninstallReportHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_report.c:311,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/client/client_report.c:313,27'
          Dst:             lookupReportHandler
        - Src:             'src/iec61850/client/client_report.c:317,9'
          Dst:             uninstallReportHandler
        - Src:             'src/iec61850/client/client_report.c:323,14'
          Dst:             ClientReport_create
        - Src:             'src/iec61850/client/client_report.c:329,32'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/client/client_report.c:332,29'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/client/client_report.c:336,9'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/client/client_report.c:338,9'
          Dst:             Semaphore_post
    - functionName:    ClientReport_create
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_report.c:94,40'
          Dst:             Memory_calloc
    - functionName:    ClientReport_getMoreSeqmentsFollow
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_getSubSeqNum
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_hasSubSeqNum
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 262
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_getDataSetValues
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_getDataSetName
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_getDataReference
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          62
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsValue_getElement
        - MmsValue_getType
        - MmsValue_toString
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_report.c:233,34'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/client/client_report.c:237,17'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_report.c:239,24'
          Dst:             MmsValue_toString
    - functionName:    ClientReport_hasDataReference
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_getBufOvfl
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_hasBufOvfl
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_getConfRev
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_hasConfRev
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_hasReasonForInclusion
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_hasDataSetName
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_getSeqNum
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_hasSeqNum
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_getTimestamp
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_hasTimestamp
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_getEntryId
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_getReasonForInclusion
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_getRptId
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientReport_getRcbReference
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ReasonForInclusion_getValueAsString
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/iec61850/client/client_report.c:73,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    createOriginValue
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 351
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          98
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - MmsValue_createEmptyStructure
        - MmsValue_delete
        - MmsValue_newIntegerFromInt16
        - MmsValue_newOctetString
        - MmsValue_setElement
        - MmsValue_setOctetString
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:352,24'
          Dst:             MmsValue_createEmptyStructure
        - Src:             'src/iec61850/client/client_control.c:357,23'
          Dst:             MmsValue_newIntegerFromInt16
        - Src:             'src/iec61850/client/client_control.c:362,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:368,30'
          Dst:             strlen
        - Src:             'src/iec61850/client/client_control.c:369,19'
          Dst:             MmsValue_newOctetString
        - Src:             'src/iec61850/client/client_control.c:374,9'
          Dst:             MmsValue_setOctetString
        - Src:             'src/iec61850/client/client_control.c:377,19'
          Dst:             MmsValue_newOctetString
        - Src:             'src/iec61850/client/client_control.c:382,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:387,5'
          Dst:             MmsValue_delete
    - functionName:    controlObjectClient_invokeCommandTerminationHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1378
      functionLinenumberEnd: 1381
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObjectClient_setCtlNum
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1372
      functionLinenumberEnd: 1374
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObjectClient_getLastApplError
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1366
      functionLinenumberEnd: 1367
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObjectClient_setLastApplError
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1360
      functionLinenumberEnd: 1362
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObjectClient_setTestMode
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1354
      functionLinenumberEnd: 1356
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObjectClient_setSynchroCheck
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1348
      functionLinenumberEnd: 1350
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObjectClient_enableSynchroCheck
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1342
      functionLinenumberEnd: 1344
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObjectClient_setInterlockCheck
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1336
      functionLinenumberEnd: 1338
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObjectClient_enableInterlockCheck
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1330
      functionLinenumberEnd: 1332
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObjectClient_useConstantT
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1324
      functionLinenumberEnd: 1326
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    internalCancelHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1221
      functionLinenumberEnd: 1265
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          108
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - iedConnection_lookupOutstandingCall
        - iedConnection_mapDataAccessErrorToIedError
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:1224,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/client_control.c:1230,35'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/client_control.c:1239,24'
          Dst:             iedConnection_mapDataAccessErrorToIedError
        - Src:             'src/iec61850/client/client_control.c:1258,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    ControlObjectClient_cancelAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1270
      functionLinenumberEnd: 1319
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          114
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsConnection_writeVariableAsync
        - MmsMapping_getMmsDomainFromObjectReference
        - MmsValue_delete
        - MmsValue_setElement
        - StringUtils_appendString
        - convertToMmsAndInsertFC
        - createCancelParameters
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
        - internalCancelHandler
        - resetLastApplError
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:1274,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/client_control.c:1282,34'
          Dst:             createCancelParameters
        - Src:             'src/iec61850/client/client_control.c:1284,5'
          Dst:             resetLastApplError
        - Src:             'src/iec61850/client/client_control.c:1289,5'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/client_control.c:1291,61'
          Dst:             strlen
        - Src:             'src/iec61850/client/client_control.c:1291,5'
          Dst:             convertToMmsAndInsertFC
        - Src:             'src/iec61850/client/client_control.c:1293,5'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/client/client_control.c:1303,5'
          Dst:             MmsConnection_writeVariableAsync
        - Src:             'src/iec61850/client/client_control.c:1303,5'
          Dst:             internalCancelHandler
        - Src:             'src/iec61850/client/client_control.c:1308,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:1309,5'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/client_control.c:1311,12'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/client_control.c:1315,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    createCancelParameters
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1116
      functionLinenumberEnd: 1167
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          166
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - Hal_getTimeInMs
        - MmsValue_createEmptyStructure
        - MmsValue_newBinaryTime
        - MmsValue_newBoolean
        - MmsValue_newUnsignedFromUint32
        - MmsValue_newUtcTimeByMsTime
        - MmsValue_setBinaryTime
        - MmsValue_setElement
        - MmsValue_setUtcTimeQuality
        - createOriginValue
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:1120,28'
          Dst:             MmsValue_createEmptyStructure
        - Src:             'src/iec61850/client/client_control.c:1122,28'
          Dst:             MmsValue_createEmptyStructure
        - Src:             'src/iec61850/client/client_control.c:1124,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:1130,28'
          Dst:             MmsValue_newUtcTimeByMsTime
        - Src:             'src/iec61850/client/client_control.c:1131,9'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:1134,24'
          Dst:             createOriginValue
        - Src:             'src/iec61850/client/client_control.c:1136,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:1138,24'
          Dst:             MmsValue_newUnsignedFromUint32
        - Src:             'src/iec61850/client/client_control.c:1139,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:1146,21'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/client/client_control.c:1152,19'
          Dst:             MmsValue_newUtcTimeByMsTime
        - Src:             'src/iec61850/client/client_control.c:1155,13'
          Dst:             MmsValue_setUtcTimeQuality
        - Src:             'src/iec61850/client/client_control.c:1159,19'
          Dst:             MmsValue_newBinaryTime
        - Src:             'src/iec61850/client/client_control.c:1160,9'
          Dst:             MmsValue_setBinaryTime
        - Src:             'src/iec61850/client/client_control.c:1162,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:1164,25'
          Dst:             MmsValue_newBoolean
        - Src:             'src/iec61850/client/client_control.c:1165,5'
          Dst:             MmsValue_setElement
    - functionName:    resetLastApplError
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    convertToMmsAndInsertFC
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          145
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - strlen
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:76,32'
          Dst:             strlen
    - functionName:    ControlObjectClient_cancel
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1172
      functionLinenumberEnd: 1217
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          86
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - IedConnection_getMmsConnection
        - MmsConnection_writeVariable
        - MmsMapping_getMmsDomainFromObjectReference
        - MmsValue_delete
        - MmsValue_setElement
        - StringUtils_appendString
        - convertToMmsAndInsertFC
        - createCancelParameters
        - resetLastApplError
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:1173,5'
          Dst:             resetLastApplError
        - Src:             'src/iec61850/client/client_control.c:1175,34'
          Dst:             createCancelParameters
        - Src:             'src/iec61850/client/client_control.c:1180,5'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/client_control.c:1182,61'
          Dst:             strlen
        - Src:             'src/iec61850/client/client_control.c:1182,5'
          Dst:             convertToMmsAndInsertFC
        - Src:             'src/iec61850/client/client_control.c:1184,5'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/client/client_control.c:1191,66'
          Dst:             IedConnection_getMmsConnection
        - Src:             'src/iec61850/client/client_control.c:1191,38'
          Dst:             MmsConnection_writeVariable
        - Src:             'src/iec61850/client/client_control.c:1197,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:1198,5'
          Dst:             MmsValue_delete
    - functionName:    internalSelectHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 997
      functionLinenumberEnd: 1064
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          151
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - MmsMapping_getMmsDomainFromObjectReference
        - MmsValue_delete
        - MmsValue_getDataAccessError
        - MmsValue_getType
        - MmsValue_toString
        - StringUtils_appendString
        - convertToMmsAndInsertFC
        - iedConnection_lookupOutstandingCall
        - iedConnection_mapDataAccessErrorToIedError
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
        - strcmp
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:1000,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/client_control.c:1006,35'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/client_control.c:1017,17'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_control.c:1019,54'
          Dst:             MmsValue_getDataAccessError
        - Src:             'src/iec61850/client/client_control.c:1021,28'
          Dst:             iedConnection_mapDataAccessErrorToIedError
        - Src:             'src/iec61850/client/client_control.c:1023,22'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_control.c:1028,17'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/client_control.c:1030,73'
          Dst:             strlen
        - Src:             'src/iec61850/client/client_control.c:1030,17'
          Dst:             convertToMmsAndInsertFC
        - Src:             'src/iec61850/client/client_control.c:1032,17'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/client/client_control.c:1034,28'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/client/client_control.c:1034,21'
          Dst:             strcmp
        - Src:             'src/iec61850/client/client_control.c:1055,9'
          Dst:             iedConnection_releaseOutstandingCall
        - Src:             'src/iec61850/client/client_control.c:1063,5'
          Dst:             MmsValue_delete
    - functionName:    ControlObjectClient_selectAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1068
      functionLinenumberEnd: 1112
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          108
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - IedConnection_getMmsConnection
        - MmsConnection_readVariableAsync
        - MmsMapping_getMmsDomainFromObjectReference
        - StringUtils_appendString
        - convertToMmsAndInsertFC
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
        - internalSelectHandler
        - resetLastApplError
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:1072,5'
          Dst:             resetLastApplError
        - Src:             'src/iec61850/client/client_control.c:1077,5'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/client_control.c:1079,61'
          Dst:             strlen
        - Src:             'src/iec61850/client/client_control.c:1079,5'
          Dst:             convertToMmsAndInsertFC
        - Src:             'src/iec61850/client/client_control.c:1081,5'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/client/client_control.c:1083,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/client_control.c:1099,37'
          Dst:             IedConnection_getMmsConnection
        - Src:             'src/iec61850/client/client_control.c:1099,5'
          Dst:             MmsConnection_readVariableAsync
        - Src:             'src/iec61850/client/client_control.c:1099,5'
          Dst:             internalSelectHandler
        - Src:             'src/iec61850/client/client_control.c:1104,12'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/client_control.c:1108,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    ControlObjectClient_select
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 928
      functionLinenumberEnd: 992
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          109
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IedConnection_getMmsConnection
        - MmsConnection_readVariable
        - MmsMapping_getMmsDomainFromObjectReference
        - MmsValue_delete
        - MmsValue_getDataAccessError
        - MmsValue_getType
        - MmsValue_toString
        - StringUtils_appendString
        - convertToMmsAndInsertFC
        - resetLastApplError
        - strcmp
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:929,5'
          Dst:             resetLastApplError
        - Src:             'src/iec61850/client/client_control.c:934,5'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/client_control.c:936,61'
          Dst:             strlen
        - Src:             'src/iec61850/client/client_control.c:936,5'
          Dst:             convertToMmsAndInsertFC
        - Src:             'src/iec61850/client/client_control.c:938,5'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/client/client_control.c:946,36'
          Dst:             IedConnection_getMmsConnection
        - Src:             'src/iec61850/client/client_control.c:946,9'
          Dst:             MmsConnection_readVariable
        - Src:             'src/iec61850/client/client_control.c:962,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_control.c:964,20'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/client/client_control.c:964,13'
          Dst:             strcmp
        - Src:             'src/iec61850/client/client_control.c:976,14'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_control.c:978,33'
          Dst:             MmsValue_getDataAccessError
        - Src:             'src/iec61850/client/client_control.c:989,5'
          Dst:             MmsValue_delete
    - functionName:    internalSelWithValHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 811
      functionLinenumberEnd: 855
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          108
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - iedConnection_lookupOutstandingCall
        - iedConnection_mapDataAccessErrorToIedError
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:814,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/client_control.c:820,35'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/client_control.c:829,24'
          Dst:             iedConnection_mapDataAccessErrorToIedError
        - Src:             'src/iec61850/client/client_control.c:848,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    ControlObjectClient_selectWithValueAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 860
      functionLinenumberEnd: 923
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          148
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - MmsConnection_writeVariableAsync
        - MmsMapping_getMmsDomainFromObjectReference
        - MmsValue_delete
        - MmsValue_setElement
        - MmsValue_update
        - StringUtils_appendString
        - convertToMmsAndInsertFC
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
        - internalSelWithValHandler
        - prepareSBOwParameters
        - resetLastApplError
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:870,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/client_control.c:878,34'
          Dst:             prepareSBOwParameters
        - Src:             'src/iec61850/client/client_control.c:880,5'
          Dst:             resetLastApplError
        - Src:             'src/iec61850/client/client_control.c:885,5'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/client_control.c:887,61'
          Dst:             strlen
        - Src:             'src/iec61850/client/client_control.c:887,5'
          Dst:             convertToMmsAndInsertFC
        - Src:             'src/iec61850/client/client_control.c:889,5'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/client/client_control.c:899,5'
          Dst:             MmsConnection_writeVariableAsync
        - Src:             'src/iec61850/client/client_control.c:899,5'
          Dst:             internalSelWithValHandler
        - Src:             'src/iec61850/client/client_control.c:904,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:905,5'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/client_control.c:907,12'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/client_control.c:911,9'
          Dst:             iedConnection_releaseOutstandingCall
        - Src:             'src/iec61850/client/client_control.c:915,9'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/client/client_control.c:921,9'
          Dst:             MmsValue_setElement
    - functionName:    prepareSBOwParameters
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 663
      functionLinenumberEnd: 734
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          254
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - Hal_getTimeInMs
        - MmsValue_createEmptyStructure
        - MmsValue_getType
        - MmsValue_newBinaryTime
        - MmsValue_newBitString
        - MmsValue_newBoolean
        - MmsValue_newUnsignedFromUint32
        - MmsValue_newUtcTimeByMsTime
        - MmsValue_setBinaryTime
        - MmsValue_setBitStringBit
        - MmsValue_setElement
        - MmsValue_setUtcTimeQuality
        - createOriginValue
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:672,34'
          Dst:             MmsValue_createEmptyStructure
        - Src:             'src/iec61850/client/client_control.c:677,13'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_control.c:679,13'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:684,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:690,28'
          Dst:             MmsValue_newUtcTimeByMsTime
        - Src:             'src/iec61850/client/client_control.c:691,9'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:694,24'
          Dst:             createOriginValue
        - Src:             'src/iec61850/client/client_control.c:695,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:701,28'
          Dst:             MmsValue_newUnsignedFromUint32
        - Src:             'src/iec61850/client/client_control.c:702,9'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:705,26'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/client/client_control.c:713,19'
          Dst:             MmsValue_newUtcTimeByMsTime
        - Src:             'src/iec61850/client/client_control.c:716,13'
          Dst:             MmsValue_setUtcTimeQuality
        - Src:             'src/iec61850/client/client_control.c:720,19'
          Dst:             MmsValue_newBinaryTime
        - Src:             'src/iec61850/client/client_control.c:721,9'
          Dst:             MmsValue_setBinaryTime
        - Src:             'src/iec61850/client/client_control.c:724,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:726,25'
          Dst:             MmsValue_newBoolean
        - Src:             'src/iec61850/client/client_control.c:727,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:729,23'
          Dst:             MmsValue_newBitString
        - Src:             'src/iec61850/client/client_control.c:730,5'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/client/client_control.c:731,5'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/client/client_control.c:732,5'
          Dst:             MmsValue_setElement
    - functionName:    ControlObjectClient_selectWithValue
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 739
      functionLinenumberEnd: 806
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          146
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - IedConnection_getMmsConnection
        - MmsConnection_writeVariable
        - MmsMapping_getMmsDomainFromObjectReference
        - MmsValue_delete
        - MmsValue_setElement
        - MmsValue_update
        - StringUtils_appendString
        - convertToMmsAndInsertFC
        - prepareSBOwParameters
        - resetLastApplError
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:742,5'
          Dst:             resetLastApplError
        - Src:             'src/iec61850/client/client_control.c:747,5'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/client_control.c:749,61'
          Dst:             strlen
        - Src:             'src/iec61850/client/client_control.c:749,5'
          Dst:             convertToMmsAndInsertFC
        - Src:             'src/iec61850/client/client_control.c:751,5'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/client/client_control.c:766,34'
          Dst:             prepareSBOwParameters
        - Src:             'src/iec61850/client/client_control.c:768,66'
          Dst:             IedConnection_getMmsConnection
        - Src:             'src/iec61850/client/client_control.c:768,38'
          Dst:             MmsConnection_writeVariable
        - Src:             'src/iec61850/client/client_control.c:771,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:772,5'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/client_control.c:799,5'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/client/client_control.c:804,9'
          Dst:             MmsValue_setElement
    - functionName:    internalOperateHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 558
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          97
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - iedConnection_lookupOutstandingCall
        - iedConnection_mapDataAccessErrorToIedError
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:561,41'
          Dst:             iedConnection_lookupOutstandingCall
        - Src:             'src/iec61850/client/client_control.c:567,35'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/client_control.c:576,24'
          Dst:             iedConnection_mapDataAccessErrorToIedError
        - Src:             'src/iec61850/client/client_control.c:584,9'
          Dst:             iedConnection_releaseOutstandingCall
    - functionName:    ControlObjectClient_operateAsync
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 658
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          153
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - MmsConnection_writeVariableAsync
        - MmsMapping_getMmsDomainFromObjectReference
        - MmsValue_delete
        - MmsValue_setElement
        - MmsValue_update
        - StringUtils_appendString
        - convertToMmsAndInsertFC
        - iedConnection_allocateOutstandingCall
        - iedConnection_mapMmsErrorToIedError
        - iedConnection_releaseOutstandingCall
        - internalOperateHandler
        - prepareOperParameters
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:606,41'
          Dst:             iedConnection_allocateOutstandingCall
        - Src:             'src/iec61850/client/client_control.c:617,32'
          Dst:             prepareOperParameters
        - Src:             'src/iec61850/client/client_control.c:622,5'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/client_control.c:624,61'
          Dst:             strlen
        - Src:             'src/iec61850/client/client_control.c:624,5'
          Dst:             convertToMmsAndInsertFC
        - Src:             'src/iec61850/client/client_control.c:626,5'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/client/client_control.c:633,5'
          Dst:             MmsConnection_writeVariableAsync
        - Src:             'src/iec61850/client/client_control.c:633,5'
          Dst:             internalOperateHandler
        - Src:             'src/iec61850/client/client_control.c:637,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:638,5'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/client_control.c:640,12'
          Dst:             iedConnection_mapMmsErrorToIedError
        - Src:             'src/iec61850/client/client_control.c:644,9'
          Dst:             iedConnection_releaseOutstandingCall
        - Src:             'src/iec61850/client/client_control.c:648,9'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/client/client_control.c:656,9'
          Dst:             MmsValue_setElement
    - functionName:    prepareOperParameters
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 396
      functionLinenumberEnd: 493
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          329
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached:
        - Hal_getTimeInMs
        - MmsMapping_getMmsDomainFromObjectReference
        - MmsValue_createEmptyStructure
        - MmsValue_getType
        - MmsValue_newBinaryTime
        - MmsValue_newBitString
        - MmsValue_newBoolean
        - MmsValue_newUnsignedFromUint32
        - MmsValue_newUtcTimeByMsTime
        - MmsValue_setBinaryTime
        - MmsValue_setBitStringBit
        - MmsValue_setElement
        - MmsValue_setUtcTimeQuality
        - StringUtils_appendString
        - convertToMmsAndInsertFC
        - createOriginValue
        - resetLastApplError
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:397,5'
          Dst:             resetLastApplError
        - Src:             'src/iec61850/client/client_control.c:409,22'
          Dst:             MmsValue_createEmptyStructure
        - Src:             'src/iec61850/client/client_control.c:414,13'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_control.c:416,13'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:421,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:427,28'
          Dst:             MmsValue_newUtcTimeByMsTime
        - Src:             'src/iec61850/client/client_control.c:428,9'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:431,24'
          Dst:             createOriginValue
        - Src:             'src/iec61850/client/client_control.c:432,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:442,28'
          Dst:             MmsValue_newUnsignedFromUint32
        - Src:             'src/iec61850/client/client_control.c:443,9'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:451,21'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/client/client_control.c:460,19'
          Dst:             MmsValue_newUtcTimeByMsTime
        - Src:             'src/iec61850/client/client_control.c:463,13'
          Dst:             MmsValue_setUtcTimeQuality
        - Src:             'src/iec61850/client/client_control.c:467,19'
          Dst:             MmsValue_newBinaryTime
        - Src:             'src/iec61850/client/client_control.c:468,9'
          Dst:             MmsValue_setBinaryTime
        - Src:             'src/iec61850/client/client_control.c:471,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:473,25'
          Dst:             MmsValue_newBoolean
        - Src:             'src/iec61850/client/client_control.c:474,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:476,23'
          Dst:             MmsValue_newBitString
        - Src:             'src/iec61850/client/client_control.c:477,5'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/client/client_control.c:478,5'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/client/client_control.c:479,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:484,5'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/client_control.c:486,61'
          Dst:             strlen
        - Src:             'src/iec61850/client/client_control.c:486,5'
          Dst:             convertToMmsAndInsertFC
        - Src:             'src/iec61850/client/client_control.c:488,5'
          Dst:             StringUtils_appendString
    - functionName:    ControlObjectClient_operate
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 498
      functionLinenumberEnd: 553
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          114
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - IedConnection_getMmsConnection
        - MmsConnection_writeVariable
        - MmsMapping_getMmsDomainFromObjectReference
        - MmsValue_delete
        - MmsValue_setElement
        - MmsValue_update
        - StringUtils_appendString
        - convertToMmsAndInsertFC
        - prepareOperParameters
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:509,32'
          Dst:             prepareOperParameters
        - Src:             'src/iec61850/client/client_control.c:514,5'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/client/client_control.c:516,61'
          Dst:             strlen
        - Src:             'src/iec61850/client/client_control.c:516,5'
          Dst:             convertToMmsAndInsertFC
        - Src:             'src/iec61850/client/client_control.c:518,5'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/client/client_control.c:525,66'
          Dst:             IedConnection_getMmsConnection
        - Src:             'src/iec61850/client/client_control.c:525,38'
          Dst:             MmsConnection_writeVariable
        - Src:             'src/iec61850/client/client_control.c:528,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/client/client_control.c:529,5'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/client_control.c:542,5'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/client/client_control.c:551,9'
          Dst:             MmsValue_setElement
    - functionName:    ControlObjectClient_setOrigin
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_free
        - StringUtils_copyString
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:339,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/client/client_control.c:342,25'
          Dst:             StringUtils_copyString
    - functionName:    ControlObjectClient_getLastError
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 328
      functionLinenumberEnd: 333
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - iedConnection_mapDataAccessErrorToIedError
        - iedConnection_mapMmsErrorToIedError
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:330,16'
          Dst:             iedConnection_mapDataAccessErrorToIedError
        - Src:             'src/iec61850/client/client_control.c:332,16'
          Dst:             iedConnection_mapMmsErrorToIedError
    - functionName:    ControlObjectClient_getCtlValType
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_getType
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:321,16'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/client/client_control.c:323,16'
          Dst:             MmsValue_getType
    - functionName:    ControlObjectClient_changeServerControlModel
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObjectClient_setControlModel
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObjectClient_getControlModel
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 300
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObjectClient_getObjectReference
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObjectClient_setCommandTerminationHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObjectClient_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          83
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - Memory_free
        - MmsValue_delete
        - iedConnection_removeControlClient
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:267,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/client/client_control.c:269,9'
          Dst:             iedConnection_removeControlClient
        - Src:             'src/iec61850/client/client_control.c:272,13'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/client_control.c:275,13'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/client/client_control.c:278,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/client/client_control.c:280,9'
          Dst:             Memory_free
    - functionName:    ControlObjectClient_create
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          71
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ControlObjectClient_createEx
        - IedConnection_getVariableSpecification
        - IedConnection_readUnsigned32Value
        - MmsVariableSpecification_destroy
        - StringUtils_concatString
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:224,9'
          Dst:             strlen
        - Src:             'src/iec61850/client/client_control.c:226,9'
          Dst:             StringUtils_concatString
        - Src:             'src/iec61850/client/client_control.c:233,25'
          Dst:             IedConnection_readUnsigned32Value
        - Src:             'src/iec61850/client/client_control.c:244,13'
          Dst:             IedConnection_getVariableSpecification
        - Src:             'src/iec61850/client/client_control.c:254,12'
          Dst:             ControlObjectClient_createEx
        - Src:             'src/iec61850/client/client_control.c:256,5'
          Dst:             MmsVariableSpecification_destroy
    - functionName:    ControlObjectClient_createEx
      functionSourceFile: '/src/libiec61850/src/iec61850/client/client_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          247
      EdgeCount:       57
      CyclomaticComplexity: 16
      functionsReached:
        - Memory_calloc
        - MmsValue_createEmptyStructure
        - MmsValue_newDefaultValue
        - MmsVariableSpecification_getNamedVariableRecursive
        - MmsVariableSpecification_getType
        - StringUtils_copyString
        - iedConnection_addControlClient
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/client/client_control.c:129,9'
          Dst:             MmsVariableSpecification_getType
        - Src:             'src/iec61850/client/client_control.c:131,42'
          Dst:             MmsVariableSpecification_getNamedVariableRecursive
        - Src:             'src/iec61850/client/client_control.c:137,22'
          Dst:             MmsVariableSpecification_getNamedVariableRecursive
        - Src:             'src/iec61850/client/client_control.c:140,26'
          Dst:             MmsVariableSpecification_getNamedVariableRecursive
        - Src:             'src/iec61850/client/client_control.c:144,21'
          Dst:             MmsVariableSpecification_getType
        - Src:             'src/iec61850/client/client_control.c:148,48'
          Dst:             MmsVariableSpecification_getNamedVariableRecursive
        - Src:             'src/iec61850/client/client_control.c:153,48'
          Dst:             MmsVariableSpecification_getNamedVariableRecursive
        - Src:             'src/iec61850/client/client_control.c:158,17'
          Dst:             MmsVariableSpecification_getNamedVariableRecursive
        - Src:             'src/iec61850/client/client_control.c:179,34'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/client/client_control.c:184,29'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/client/client_control.c:189,20'
          Dst:             MmsValue_newDefaultValue
        - Src:             'src/iec61850/client/client_control.c:192,29'
          Dst:             MmsValue_createEmptyStructure
        - Src:             'src/iec61850/client/client_control.c:199,13'
          Dst:             MmsVariableSpecification_getType
        - Src:             'src/iec61850/client/client_control.c:210,5'
          Dst:             iedConnection_addControlClient
    - functionName:    LibIEC61850_getVersionString
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 888
      functionLinenumberEnd: 889
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getNumberOfDigits
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 773
      functionLinenumberEnd: 781
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsMapping_varAccessSpecToObjectReference
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 786
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         34
      ICount:          315
      EdgeCount:       44
      CyclomaticComplexity: 12
      functionsReached:
        - Memory_malloc
        - getNumberOfDigits
        - sprintf
        - strchr
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/common/iec61850_common.c:789,23'
          Dst:             strlen
        - Src:             'src/iec61850/common/iec61850_common.c:793,23'
          Dst:             strchr
        - Src:             'src/iec61850/common/iec61850_common.c:795,21'
          Dst:             strlen
        - Src:             'src/iec61850/common/iec61850_common.c:802,28'
          Dst:             strlen
        - Src:             'src/iec61850/common/iec61850_common.c:805,29'
          Dst:             getNumberOfDigits
        - Src:             'src/iec61850/common/iec61850_common.c:809,31'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/common/iec61850_common.c:851,9'
          Dst:             sprintf
    - functionName:    sprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsMapping_ObjectReferenceToVariableAccessSpec
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 695
      functionLinenumberEnd: 769
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         26
      ICount:          230
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - FunctionalConstraint_fromString
        - Memory_calloc
        - MmsMapping_createMmsVariableNameFromObjectReference
        - StringUtils_createStringFromBuffer
        - StringUtils_digitsToInt
        - StringUtils_replace
        - strchr
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/common/iec61850_common.c:696,25'
          Dst:             strchr
        - Src:             'src/iec61850/common/iec61850_common.c:706,21'
          Dst:             strchr
        - Src:             'src/iec61850/common/iec61850_common.c:711,19'
          Dst:             strchr
        - Src:             'src/iec61850/common/iec61850_common.c:719,31'
          Dst:             FunctionalConstraint_fromString
        - Src:             'src/iec61850/common/iec61850_common.c:722,47'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/common/iec61850_common.c:724,28'
          Dst:             StringUtils_createStringFromBuffer
        - Src:             'src/iec61850/common/iec61850_common.c:726,24'
          Dst:             strchr
        - Src:             'src/iec61850/common/iec61850_common.c:731,21'
          Dst:             strchr
        - Src:             'src/iec61850/common/iec61850_common.c:733,21'
          Dst:             strlen
        - Src:             'src/iec61850/common/iec61850_common.c:745,30'
          Dst:             MmsMapping_createMmsVariableNameFromObjectReference
        - Src:             'src/iec61850/common/iec61850_common.c:751,30'
          Dst:             strchr
        - Src:             'src/iec61850/common/iec61850_common.c:755,25'
          Dst:             StringUtils_digitsToInt
        - Src:             'src/iec61850/common/iec61850_common.c:762,45'
          Dst:             StringUtils_createStringFromBuffer
        - Src:             'src/iec61850/common/iec61850_common.c:763,17'
          Dst:             StringUtils_replace
    - functionName:    FunctionalConstraint_fromString
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         62
      ICount:          373
      EdgeCount:       91
      CyclomaticComplexity: 31
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsMapping_createMmsVariableNameFromObjectReference
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 600
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          311
      EdgeCount:       56
      CyclomaticComplexity: 16
      functionsReached:
        - FunctionalConstraint_toString
        - Memory_malloc
        - StringUtils_copyStringMax
        - strlen
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/common/iec61850_common.c:601,24'
          Dst:             strlen
        - Src:             'src/iec61850/common/iec61850_common.c:629,39'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/common/iec61850_common.c:633,9'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/common/iec61850_common.c:638,22'
          Dst:             FunctionalConstraint_toString
        - Src:             'src/iec61850/common/iec61850_common.c:652,35'
          Dst:             Memory_malloc
    - functionName:    FunctionalConstraint_toString
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          112
      EdgeCount:       42
      CyclomaticComplexity: 22
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'src/iec61850/common/iec61850_common.c:117,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    MmsMapping_getMmsDomainFromObjectReference
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 558
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          134
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - Memory_malloc
        - strlen
      functionUses:    30
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/common/iec61850_common.c:559,24'
          Dst:             strlen
        - Src:             'src/iec61850/common/iec61850_common.c:582,30'
          Dst:             Memory_malloc
    - functionName:    Timestamp_fromMmsValue
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 554
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          61
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - Timestamp_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/common/iec61850_common.c:543,20'
          Dst:             Timestamp_create
    - functionName:    Timestamp_create
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/common/iec61850_common.c:253,36'
          Dst:             Memory_calloc
    - functionName:    Timestamp_toMmsValue
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 525
      functionLinenumberEnd: 534
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_newUtcTime
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/common/iec61850_common.c:529,26'
          Dst:             MmsValue_newUtcTime
    - functionName:    Timestamp_setByMmsUtcTime
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 518
      functionLinenumberEnd: 521
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_getType
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/common/iec61850_common.c:519,9'
          Dst:             MmsValue_getType
    - functionName:    Timestamp_getTimeInNs
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 513
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          80
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Timestamp_getTimeInMs
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 486
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          76
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Timestamp_getTimeInSeconds
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 453
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          41
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Timestamp_getFractionOfSecond
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 448
      functionDepth:   0
      returnType:      float
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Timestamp_getFractionOfSecondPart
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/common/iec61850_common.c:448,27'
          Dst:             Timestamp_getFractionOfSecondPart
    - functionName:    Timestamp_getFractionOfSecondPart
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 434
      functionLinenumberEnd: 442
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          34
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Timestamp_setFractionOfSecondPart
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 430
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          32
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Timestamp_setTimeInNanoseconds
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 420
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          78
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Timestamp_setTimeInMilliseconds
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          77
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Timestamp_setTimeInSeconds
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          48
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Timestamp_setSubsecondPrecision
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          29
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Timestamp_getSubsecondPrecision
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Timestamp_setClockNotSynchronized
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          34
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Timestamp_isClockNotSynchronized
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 329
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Timestamp_setClockFailure
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 315
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          34
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Timestamp_hasClockFailure
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Timestamp_setLeapSecondKnown
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          34
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Timestamp_isLeapSecondKnown
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 288
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Timestamp_clearFlags
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Timestamp_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/common/iec61850_common.c:277,9'
          Dst:             Memory_free
    - functionName:    Timestamp_createFromByteArray
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          53
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - Timestamp_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/common/iec61850_common.c:261,23'
          Dst:             Timestamp_create
    - functionName:    Dbpos_toMmsValue
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          56
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - MmsValue_getBitStringSize
        - MmsValue_getType
        - MmsValue_newBitString
        - MmsValue_setBitStringFromIntegerBigEndian
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/common/iec61850_common.c:97,20'
          Dst:             MmsValue_newBitString
        - Src:             'src/iec61850/common/iec61850_common.c:100,13'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/common/iec61850_common.c:103,13'
          Dst:             MmsValue_getBitStringSize
        - Src:             'src/iec61850/common/iec61850_common.c:110,5'
          Dst:             MmsValue_setBitStringFromIntegerBigEndian
    - functionName:    Dbpos_fromMmsValue
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_getBitStringAsIntegerBigEndian
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/common/iec61850_common.c:90,20'
          Dst:             MmsValue_getBitStringAsIntegerBigEndian
    - functionName:    Quality_toMmsValue
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_newBitString
        - MmsValue_setBitStringFromInteger
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/common/iec61850_common.c:77,20'
          Dst:             MmsValue_newBitString
        - Src:             'src/iec61850/common/iec61850_common.c:81,9'
          Dst:             MmsValue_setBitStringFromInteger
    - functionName:    Quality_fromMmsValue
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_getBitStringAsInteger
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/common/iec61850_common.c:70,22'
          Dst:             MmsValue_getBitStringAsInteger
    - functionName:    Quality_unsetFlag
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Quality_setFlag
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Quality_isFlagSet
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Quality_setValidity
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Quality_getValidity
      functionSourceFile: '/src/libiec61850/src/iec61850/common/iec61850_common.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    installDefaultValuesForDataAttribute
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 372
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          306
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - MmsDevice_getDomain
        - MmsMapping_createMmsVariableNameFromObjectReference
        - MmsMapping_getMmsDomainFromObjectReference
        - MmsServer_getValueFromCache
        - MmsServer_getValueFromCacheEx2
        - MmsValue_delete
        - MmsValue_update
        - StringUtils_appendString
        - StringUtils_concatString
        - StringUtils_copyStringMax
        - installDefaultValuesForDataAttribute
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:262,13'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/impl/ied_server.c:263,13'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/impl/ied_server.c:271,17'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/impl/ied_server.c:275,17'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/impl/ied_server.c:276,17'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/impl/ied_server.c:290,5'
          Dst:             MmsMapping_createMmsVariableNameFromObjectReference
        - Src:             'src/iec61850/server/impl/ied_server.c:298,9'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/server/impl/ied_server.c:300,9'
          Dst:             StringUtils_concatString
        - Src:             'src/iec61850/server/impl/ied_server.c:304,9'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/impl/ied_server.c:307,25'
          Dst:             MmsDevice_getDomain
        - Src:             'src/iec61850/server/impl/ied_server.c:319,22'
          Dst:             MmsServer_getValueFromCache
        - Src:             'src/iec61850/server/impl/ied_server.c:321,22'
          Dst:             MmsServer_getValueFromCacheEx2
        - Src:             'src/iec61850/server/impl/ied_server.c:328,13'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/impl/ied_server.c:336,9'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/server/impl/ied_server.c:339,25'
          Dst:             strlen
        - Src:             'src/iec61850/server/impl/ied_server.c:340,26'
          Dst:             strlen
        - Src:             'src/iec61850/server/impl/ied_server.c:352,13'
          Dst:             installDefaultValuesForDataAttribute
        - Src:             'src/iec61850/server/impl/ied_server.c:367,13'
          Dst:             installDefaultValuesForDataAttribute
    - functionName:    installDefaultValuesForDataObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 445
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          222
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - StringUtils_appendString
        - installDefaultValuesForDataAttribute
        - installDefaultValuesForDataObject
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:387,9'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/impl/ied_server.c:388,9'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/impl/ied_server.c:390,29'
          Dst:             strlen
        - Src:             'src/iec61850/server/impl/ied_server.c:396,13'
          Dst:             installDefaultValuesForDataObject
        - Src:             'src/iec61850/server/impl/ied_server.c:409,13'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/impl/ied_server.c:410,13'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/impl/ied_server.c:415,17'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/impl/ied_server.c:418,17'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/impl/ied_server.c:419,17'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/impl/ied_server.c:429,25'
          Dst:             strlen
        - Src:             'src/iec61850/server/impl/ied_server.c:430,26'
          Dst:             strlen
        - Src:             'src/iec61850/server/impl/ied_server.c:436,13'
          Dst:             installDefaultValuesForDataObject
        - Src:             'src/iec61850/server/impl/ied_server.c:440,13'
          Dst:             installDefaultValuesForDataAttribute
    - functionName:    createControlObjects
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          343
      EdgeCount:       68
      CyclomaticComplexity: 18
      functionsReached:
        - ControlObject_create
        - ControlObject_destroy
        - ControlObject_setMmsValue
        - ControlObject_setTypeSpec
        - MmsMapping_addControlObject
        - MmsValue_getElement
        - MmsValue_newDefaultValue
        - StringUtils_appendString
        - StringUtils_concatString
        - createControlObjects
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:62,17'
          Dst:             StringUtils_concatString
        - Src:             'src/iec61850/server/impl/ied_server.c:86,25'
          Dst:             strcmp
        - Src:             'src/iec61850/server/impl/ied_server.c:91,30'
          Dst:             strcmp
        - Src:             'src/iec61850/server/impl/ied_server.c:96,30'
          Dst:             strcmp
        - Src:             'src/iec61850/server/impl/ied_server.c:101,31'
          Dst:             strcmp
        - Src:             'src/iec61850/server/impl/ied_server.c:115,17'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/impl/ied_server.c:122,52'
          Dst:             ControlObject_create
        - Src:             'src/iec61850/server/impl/ied_server.c:127,43'
          Dst:             MmsValue_newDefaultValue
        - Src:             'src/iec61850/server/impl/ied_server.c:131,25'
          Dst:             ControlObject_destroy
        - Src:             'src/iec61850/server/impl/ied_server.c:135,21'
          Dst:             ControlObject_setMmsValue
        - Src:             'src/iec61850/server/impl/ied_server.c:137,21'
          Dst:             ControlObject_setTypeSpec
        - Src:             'src/iec61850/server/impl/ied_server.c:139,43'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/impl/ied_server.c:142,49'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/impl/ied_server.c:145,47'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/impl/ied_server.c:148,46'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/impl/ied_server.c:150,21'
          Dst:             MmsMapping_addControlObject
        - Src:             'src/iec61850/server/impl/ied_server.c:154,25'
          Dst:             createControlObjects
    - functionName:    IedServer_ignoreReadAccess
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2272
      functionLinenumberEnd: 2274
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedServer_setControlBlockAccessHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2265
      functionLinenumberEnd: 2268
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedServer_setListObjectsAccessHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2258
      functionLinenumberEnd: 2261
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedServer_setDirectoryAccessHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2251
      functionLinenumberEnd: 2254
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedServer_setDataSetAccessHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2244
      functionLinenumberEnd: 2247
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedServer_ignoreClientRequests
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2236
      functionLinenumberEnd: 2240
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsServer_ignoreClientRequests
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:2238,9'
          Dst:             MmsServer_ignoreClientRequests
    - functionName:    IedServer_setGooseInterfaceId
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2209
      functionLinenumberEnd: 2213
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - StringUtils_copyString
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:2211,42'
          Dst:             StringUtils_copyString
    - functionName:    private_IedServer_removeClientConnection
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2195
      functionLinenumberEnd: 2205
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - LinkedList_remove
        - Semaphore_post
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:2197,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/ied_server.c:2200,5'
          Dst:             LinkedList_remove
        - Src:             'src/iec61850/server/impl/ied_server.c:2203,5'
          Dst:             Semaphore_post
    - functionName:    private_IedServer_addNewClientConnection
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2181
      functionLinenumberEnd: 2191
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - LinkedList_add
        - Semaphore_post
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:2183,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/ied_server.c:2186,5'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/server/impl/ied_server.c:2189,5'
          Dst:             Semaphore_post
    - functionName:    private_IedServer_getClientConnectionByHandle
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2151
      functionLinenumberEnd: 2176
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_getNext
        - Semaphore_post
        - Semaphore_wait
        - private_ClientConnection_getServerConnectionHandle
      functionUses:    34
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:2153,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/ied_server.c:2156,26'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/impl/ied_server.c:2163,13'
          Dst:             private_ClientConnection_getServerConnectionHandle
        - Src:             'src/iec61850/server/impl/ied_server.c:2169,19'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/impl/ied_server.c:2173,5'
          Dst:             Semaphore_post
    - functionName:    IedServer_setServerIdentity
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2124
      functionLinenumberEnd: 2147
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          131
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - Memory_free
        - MmsServer_setServerIdentity
        - StringUtils_copyString
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:2128,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/impl/ied_server.c:2131,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/impl/ied_server.c:2134,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/impl/ied_server.c:2137,25'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/impl/ied_server.c:2140,24'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/impl/ied_server.c:2143,23'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/impl/ied_server.c:2145,5'
          Dst:             MmsServer_setServerIdentity
    - functionName:    IedServer_setLogStorage
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2112
      functionLinenumberEnd: 2120
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsMapping_setLogStorage
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:2114,5'
          Dst:             MmsMapping_setLogStorage
    - functionName:    IedServer_setEditSettingGroupConfirmationHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2104
      functionLinenumberEnd: 2108
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsMapping_setConfirmEditSgHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:2106,5'
          Dst:             MmsMapping_setConfirmEditSgHandler
    - functionName:    IedServer_setEditSettingGroupChangedHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2095
      functionLinenumberEnd: 2099
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsMapping_setEditSgChangedHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:2097,5'
          Dst:             MmsMapping_setEditSgChangedHandler
    - functionName:    IedServer_setActiveSettingGroupChangedHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2086
      functionLinenumberEnd: 2090
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsMapping_setSgChangedHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:2088,5'
          Dst:             MmsMapping_setSgChangedHandler
    - functionName:    IedServer_getActiveSettingGroup
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2077
      functionLinenumberEnd: 2080
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedServer_changeActiveSettingGroup
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2069
      functionLinenumberEnd: 2073
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsMapping_changeActiveSettingGroup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:2071,5'
          Dst:             MmsMapping_changeActiveSettingGroup
    - functionName:    IedServer_getFunctionalConstrainedData
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1961
      functionLinenumberEnd: 2064
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          233
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - FunctionalConstraint_toString
        - MmsDevice_getDomain
        - MmsServer_getValueFromCache
        - StringUtils_concatString
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1971,19'
          Dst:             strlen
        - Src:             'src/iec61850/server/impl/ied_server.c:2001,22'
          Dst:             FunctionalConstraint_toString
        - Src:             'src/iec61850/server/impl/ied_server.c:2023,15'
          Dst:             strlen
        - Src:             'src/iec61850/server/impl/ied_server.c:2041,10'
          Dst:             strlen
        - Src:             'src/iec61850/server/impl/ied_server.c:2041,38'
          Dst:             strlen
        - Src:             'src/iec61850/server/impl/ied_server.c:2049,5'
          Dst:             StringUtils_concatString
        - Src:             'src/iec61850/server/impl/ied_server.c:2051,25'
          Dst:             MmsDevice_getDomain
        - Src:             'src/iec61850/server/impl/ied_server.c:2061,13'
          Dst:             MmsServer_getValueFromCache
    - functionName:    IedServer_setConnectionIndicationHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1955
      functionLinenumberEnd: 1957
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsMapping_setConnectionIndicationHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1956,5'
          Dst:             MmsMapping_setConnectionIndicationHandler
    - functionName:    IedServer_setReadAccessHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1949
      functionLinenumberEnd: 1951
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsMapping_installReadAccessHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1950,5'
          Dst:             MmsMapping_installReadAccessHandler
    - functionName:    IedServer_handleWriteAccessForDataObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1916
      functionLinenumberEnd: 1945
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          97
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - IedServer_handleWriteAccessForComplexAttribute
        - IedServer_handleWriteAccessForDataObject
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1934,21'
          Dst:             IedServer_handleWriteAccessForComplexAttribute
        - Src:             'src/iec61850/server/impl/ied_server.c:1939,17'
          Dst:             IedServer_handleWriteAccessForDataObject
    - functionName:    IedServer_handleWriteAccessForComplexAttribute
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1893
      functionLinenumberEnd: 1912
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - IedServer_handleWriteAccessForComplexAttribute
        - MmsMapping_installWriteAccessHandler
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1901,9'
          Dst:             MmsMapping_installWriteAccessHandler
        - Src:             'src/iec61850/server/impl/ied_server.c:1907,13'
          Dst:             IedServer_handleWriteAccessForComplexAttribute
    - functionName:    IedServer_handleWriteAccess
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1879
      functionLinenumberEnd: 1889
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsMapping_installWriteAccessHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1887,9'
          Dst:             MmsMapping_installWriteAccessHandler
    - functionName:    IedServer_handleWriteAccessGlobally
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1870
      functionLinenumberEnd: 1875
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          43
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - MmsMapping_installGlobalWriteAccessHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1873,9'
          Dst:             MmsMapping_installGlobalWriteAccessHandler
    - functionName:    IedServer_setWriteAccessPolicy
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1819
      functionLinenumberEnd: 1866
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          142
      EdgeCount:       34
      CyclomaticComplexity: 18
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/iec61850/server/impl/ied_server.c:1822,9'
          Branch Sides:    []
        - Branch String:   'src/iec61850/server/impl/ied_server.c:1845,9'
          Branch Sides:    []
      Callsites:       []
    - functionName:    IedServer_stopGoosePublishing
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1802
      functionLinenumberEnd: 1813
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsMapping_disableGoosePublishing
        - MmsMapping_stopEventWorkerThread
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1809,5'
          Dst:             MmsMapping_stopEventWorkerThread
        - Src:             'src/iec61850/server/impl/ied_server.c:1812,5'
          Dst:             MmsMapping_disableGoosePublishing
    - functionName:    IedServer_startGoosePublishing
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1787
      functionLinenumberEnd: 1798
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsMapping_enableGoosePublishing
        - MmsMapping_startEventWorkerThread
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1791,5'
          Dst:             MmsMapping_enableGoosePublishing
        - Src:             'src/iec61850/server/impl/ied_server.c:1794,5'
          Dst:             MmsMapping_startEventWorkerThread
    - functionName:    IedServer_disableGoosePublishing
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1777
      functionLinenumberEnd: 1781
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsMapping_disableGoosePublishing
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1779,5'
          Dst:             MmsMapping_disableGoosePublishing
    - functionName:    IedServer_enableGoosePublishing
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1769
      functionLinenumberEnd: 1773
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsMapping_enableGoosePublishing
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1771,5'
          Dst:             MmsMapping_enableGoosePublishing
    - functionName:    IedServer_setGooseInterfaceIdEx
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1761
      functionLinenumberEnd: 1765
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsMapping_setGooseInterfaceId
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1763,5'
          Dst:             MmsMapping_setGooseInterfaceId
    - functionName:    IedServer_useGooseVlanTag
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1753
      functionLinenumberEnd: 1757
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsMapping_useGooseVlanTag
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1755,5'
          Dst:             MmsMapping_useGooseVlanTag
    - functionName:    IedServer_updateQuality
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1707
      functionLinenumberEnd: 1749
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          129
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - MmsMapping_triggerGooseObservers
        - MmsMapping_triggerLogging
        - MmsMapping_triggerReportObservers
        - MmsValue_getBitStringAsInteger
        - MmsValue_getType
        - MmsValue_setBitStringFromInteger
        - Semaphore_post
        - Semaphore_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1716,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/impl/ied_server.c:1719,27'
          Dst:             MmsValue_getBitStringAsInteger
        - Src:             'src/iec61850/server/impl/ied_server.c:1724,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/ied_server.c:1726,9'
          Dst:             MmsValue_setBitStringFromInteger
        - Src:             'src/iec61850/server/impl/ied_server.c:1729,9'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/impl/ied_server.c:1733,9'
          Dst:             MmsMapping_triggerGooseObservers
        - Src:             'src/iec61850/server/impl/ied_server.c:1738,13'
          Dst:             MmsMapping_triggerReportObservers
        - Src:             'src/iec61850/server/impl/ied_server.c:1744,13'
          Dst:             MmsMapping_triggerLogging
    - functionName:    IedServer_updateTimestampAttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1678
      functionLinenumberEnd: 1703
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          85
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - MmsValue_getType
        - MmsValue_setUtcTimeByBuffer
        - Semaphore_post
        - Semaphore_wait
        - checkForChangedTriggers
        - checkForUpdateTrigger
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1686,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/impl/ied_server.c:1689,9'
          Dst:             memcmp
        - Src:             'src/iec61850/server/impl/ied_server.c:1692,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/ied_server.c:1694,9'
          Dst:             MmsValue_setUtcTimeByBuffer
        - Src:             'src/iec61850/server/impl/ied_server.c:1696,9'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/impl/ied_server.c:1699,9'
          Dst:             checkForChangedTriggers
        - Src:             'src/iec61850/server/impl/ied_server.c:1702,5'
          Dst:             checkForUpdateTrigger
    - functionName:    checkForChangedTriggers
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1316
      functionLinenumberEnd: 1353
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          86
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsMapping_triggerGooseObservers
        - MmsMapping_triggerLogging
        - MmsMapping_triggerReportObservers
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1321,9'
          Dst:             MmsMapping_triggerGooseObservers
        - Src:             'src/iec61850/server/impl/ied_server.c:1325,9'
          Dst:             MmsMapping_triggerReportObservers
        - Src:             'src/iec61850/server/impl/ied_server.c:1330,9'
          Dst:             MmsMapping_triggerLogging
        - Src:             'src/iec61850/server/impl/ied_server.c:1338,9'
          Dst:             MmsMapping_triggerGooseObservers
        - Src:             'src/iec61850/server/impl/ied_server.c:1342,9'
          Dst:             MmsMapping_triggerReportObservers
        - Src:             'src/iec61850/server/impl/ied_server.c:1347,9'
          Dst:             MmsMapping_triggerLogging
    - functionName:    checkForUpdateTrigger
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1296
      functionLinenumberEnd: 1312
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsMapping_triggerLogging
        - MmsMapping_triggerReportObservers
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1301,9'
          Dst:             MmsMapping_triggerReportObservers
        - Src:             'src/iec61850/server/impl/ied_server.c:1306,9'
          Dst:             MmsMapping_triggerLogging
    - functionName:    IedServer_updateUTCTimeAttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1647
      functionLinenumberEnd: 1674
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          87
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - MmsValue_getType
        - MmsValue_getUtcTimeInMs
        - MmsValue_setUtcTimeMsEx
        - Semaphore_post
        - Semaphore_wait
        - checkForChangedTriggers
        - checkForUpdateTrigger
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1655,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/impl/ied_server.c:1658,29'
          Dst:             MmsValue_getUtcTimeInMs
        - Src:             'src/iec61850/server/impl/ied_server.c:1663,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/ied_server.c:1665,9'
          Dst:             MmsValue_setUtcTimeMsEx
        - Src:             'src/iec61850/server/impl/ied_server.c:1667,9'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/impl/ied_server.c:1670,9'
          Dst:             checkForChangedTriggers
        - Src:             'src/iec61850/server/impl/ied_server.c:1673,5'
          Dst:             checkForUpdateTrigger
    - functionName:    IedServer_updateVisibleStringAttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1616
      functionLinenumberEnd: 1643
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          85
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - MmsValue_getType
        - MmsValue_setVisibleString
        - MmsValue_toString
        - Semaphore_post
        - Semaphore_wait
        - checkForChangedTriggers
        - checkForUpdateTrigger
        - strcmp
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1624,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/impl/ied_server.c:1627,32'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/server/impl/ied_server.c:1629,9'
          Dst:             strcmp
        - Src:             'src/iec61850/server/impl/ied_server.c:1632,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/ied_server.c:1634,9'
          Dst:             MmsValue_setVisibleString
        - Src:             'src/iec61850/server/impl/ied_server.c:1636,9'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/impl/ied_server.c:1639,9'
          Dst:             checkForChangedTriggers
        - Src:             'src/iec61850/server/impl/ied_server.c:1642,5'
          Dst:             checkForUpdateTrigger
    - functionName:    IedServer_updateBitStringAttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1545
      functionLinenumberEnd: 1572
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          84
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - MmsValue_getBitStringAsInteger
        - MmsValue_getType
        - MmsValue_setBitStringFromInteger
        - Semaphore_post
        - Semaphore_wait
        - checkForChangedTriggers
        - checkForUpdateTrigger
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1553,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/impl/ied_server.c:1556,29'
          Dst:             MmsValue_getBitStringAsInteger
        - Src:             'src/iec61850/server/impl/ied_server.c:1561,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/ied_server.c:1563,9'
          Dst:             MmsValue_setBitStringFromInteger
        - Src:             'src/iec61850/server/impl/ied_server.c:1565,9'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/impl/ied_server.c:1568,9'
          Dst:             checkForChangedTriggers
        - Src:             'src/iec61850/server/impl/ied_server.c:1571,5'
          Dst:             checkForUpdateTrigger
    - functionName:    IedServer_updateUnsignedAttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1514
      functionLinenumberEnd: 1541
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          84
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - MmsValue_getType
        - MmsValue_setUint32
        - MmsValue_toUint32
        - Semaphore_post
        - Semaphore_wait
        - checkForChangedTriggers
        - checkForUpdateTrigger
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1522,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/impl/ied_server.c:1525,29'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/server/impl/ied_server.c:1530,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/ied_server.c:1532,9'
          Dst:             MmsValue_setUint32
        - Src:             'src/iec61850/server/impl/ied_server.c:1534,9'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/impl/ied_server.c:1537,9'
          Dst:             checkForChangedTriggers
        - Src:             'src/iec61850/server/impl/ied_server.c:1540,5'
          Dst:             checkForUpdateTrigger
    - functionName:    IedServer_updateInt64AttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1483
      functionLinenumberEnd: 1510
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          84
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - MmsValue_getType
        - MmsValue_setInt64
        - MmsValue_toInt64
        - Semaphore_post
        - Semaphore_wait
        - checkForChangedTriggers
        - checkForUpdateTrigger
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1491,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/impl/ied_server.c:1494,28'
          Dst:             MmsValue_toInt64
        - Src:             'src/iec61850/server/impl/ied_server.c:1499,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/ied_server.c:1501,9'
          Dst:             MmsValue_setInt64
        - Src:             'src/iec61850/server/impl/ied_server.c:1503,9'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/impl/ied_server.c:1506,9'
          Dst:             checkForChangedTriggers
        - Src:             'src/iec61850/server/impl/ied_server.c:1509,5'
          Dst:             checkForUpdateTrigger
    - functionName:    IedServer_updateDbposValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1456
      functionLinenumberEnd: 1479
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          84
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - Dbpos_fromMmsValue
        - Dbpos_toMmsValue
        - MmsValue_getType
        - Semaphore_post
        - Semaphore_wait
        - checkForChangedTriggers
        - checkForUpdateTrigger
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1460,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/impl/ied_server.c:1463,26'
          Dst:             Dbpos_fromMmsValue
        - Src:             'src/iec61850/server/impl/ied_server.c:1468,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/ied_server.c:1470,9'
          Dst:             Dbpos_toMmsValue
        - Src:             'src/iec61850/server/impl/ied_server.c:1472,9'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/impl/ied_server.c:1475,9'
          Dst:             checkForChangedTriggers
        - Src:             'src/iec61850/server/impl/ied_server.c:1478,5'
          Dst:             checkForUpdateTrigger
    - functionName:    IedServer_updateInt32AttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1425
      functionLinenumberEnd: 1452
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          84
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - MmsValue_getType
        - MmsValue_setInt32
        - MmsValue_toInt32
        - Semaphore_post
        - Semaphore_wait
        - checkForChangedTriggers
        - checkForUpdateTrigger
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1433,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/impl/ied_server.c:1436,28'
          Dst:             MmsValue_toInt32
        - Src:             'src/iec61850/server/impl/ied_server.c:1441,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/ied_server.c:1443,9'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/impl/ied_server.c:1445,9'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/impl/ied_server.c:1448,9'
          Dst:             checkForChangedTriggers
        - Src:             'src/iec61850/server/impl/ied_server.c:1451,5'
          Dst:             checkForUpdateTrigger
    - functionName:    IedServer_updateFloatAttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1395
      functionLinenumberEnd: 1421
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - float
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          83
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - MmsValue_getType
        - MmsValue_setFloat
        - MmsValue_toFloat
        - Semaphore_post
        - Semaphore_wait
        - checkForChangedTriggers
        - checkForUpdateTrigger
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1403,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/impl/ied_server.c:1406,26'
          Dst:             MmsValue_toFloat
        - Src:             'src/iec61850/server/impl/ied_server.c:1411,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/ied_server.c:1413,9'
          Dst:             MmsValue_setFloat
        - Src:             'src/iec61850/server/impl/ied_server.c:1415,9'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/impl/ied_server.c:1417,9'
          Dst:             checkForChangedTriggers
        - Src:             'src/iec61850/server/impl/ied_server.c:1420,5'
          Dst:             checkForUpdateTrigger
    - functionName:    IedServer_updateBooleanAttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1576
      functionLinenumberEnd: 1612
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          129
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - MmsValue_getBoolean
        - MmsValue_getType
        - MmsValue_setBoolean
        - Semaphore_post
        - Semaphore_wait
        - checkForChangedTriggers
        - checkForUpdateTrigger
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1584,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/impl/ied_server.c:1587,25'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/server/impl/ied_server.c:1600,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/ied_server.c:1602,9'
          Dst:             MmsValue_setBoolean
        - Src:             'src/iec61850/server/impl/ied_server.c:1604,9'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/impl/ied_server.c:1608,13'
          Dst:             checkForChangedTriggers
        - Src:             'src/iec61850/server/impl/ied_server.c:1611,5'
          Dst:             checkForUpdateTrigger
    - functionName:    IedServer_updateAttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1357
      functionLinenumberEnd: 1391
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          87
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - IedServer_updateBooleanAttributeValue
        - MmsValue_equals
        - MmsValue_getBoolean
        - MmsValue_update
        - Semaphore_post
        - Semaphore_wait
        - checkForChangedTriggers
        - checkForUpdateTrigger
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1365,9'
          Dst:             MmsValue_equals
        - Src:             'src/iec61850/server/impl/ied_server.c:1370,72'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/server/impl/ied_server.c:1370,13'
          Dst:             IedServer_updateBooleanAttributeValue
        - Src:             'src/iec61850/server/impl/ied_server.c:1377,13'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/ied_server.c:1380,13'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/impl/ied_server.c:1383,13'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/impl/ied_server.c:1386,13'
          Dst:             checkForChangedTriggers
        - Src:             'src/iec61850/server/impl/ied_server.c:1390,5'
          Dst:             checkForUpdateTrigger
    - functionName:    IedServer_getStringAttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1283
      functionLinenumberEnd: 1291
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_toString
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1291,12'
          Dst:             MmsValue_toString
    - functionName:    IedServer_getBitStringAttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1269
      functionLinenumberEnd: 1278
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_getBitStringAsInteger
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1278,12'
          Dst:             MmsValue_getBitStringAsInteger
    - functionName:    IedServer_getUTCTimeAttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1256
      functionLinenumberEnd: 1264
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_getUtcTimeInMs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1264,12'
          Dst:             MmsValue_getUtcTimeInMs
    - functionName:    IedServer_getFloatAttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1243
      functionLinenumberEnd: 1251
      functionDepth:   0
      returnType:      float
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_toFloat
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1251,12'
          Dst:             MmsValue_toFloat
    - functionName:    IedServer_getUInt32AttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1229
      functionLinenumberEnd: 1238
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_toUint32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1238,12'
          Dst:             MmsValue_toUint32
    - functionName:    IedServer_getInt64AttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1215
      functionLinenumberEnd: 1224
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_toInt64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1224,12'
          Dst:             MmsValue_toInt64
    - functionName:    IedServer_getInt32AttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1201
      functionLinenumberEnd: 1210
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_toInt32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1210,12'
          Dst:             MmsValue_toInt32
    - functionName:    IedServer_getBooleanAttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1188
      functionLinenumberEnd: 1196
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_getBoolean
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1196,12'
          Dst:             MmsValue_getBoolean
    - functionName:    IedServer_getAttributeValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1181
      functionLinenumberEnd: 1183
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedServer_setGoCBHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1172
      functionLinenumberEnd: 1175
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedServer_setSVCBHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1162
      functionLinenumberEnd: 1164
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - LIBIEC61850_SV_setSVCBHandler
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1163,5'
          Dst:             LIBIEC61850_SV_setSVCBHandler
    - functionName:    IedServer_updateCtlModel
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1149
      functionLinenumberEnd: 1154
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ControlObject_updateControlModel
        - lookupControlObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1150,36'
          Dst:             lookupControlObject
        - Src:             'src/iec61850/server/impl/ied_server.c:1153,9'
          Dst:             ControlObject_updateControlModel
    - functionName:    lookupControlObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1064
      functionLinenumberEnd: 1096
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          72
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsDevice_getDomain
        - MmsMapping_getControlObject
        - ModelNode_getObjectReference
        - StringUtils_replace
        - strchr
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1067,5'
          Dst:             ModelNode_getObjectReference
        - Src:             'src/iec61850/server/impl/ied_server.c:1069,23'
          Dst:             strchr
        - Src:             'src/iec61850/server/impl/ied_server.c:1073,25'
          Dst:             MmsDevice_getDomain
        - Src:             'src/iec61850/server/impl/ied_server.c:1077,17'
          Dst:             strchr
        - Src:             'src/iec61850/server/impl/ied_server.c:1085,5'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/server/impl/ied_server.c:1090,36'
          Dst:             MmsMapping_getControlObject
    - functionName:    IedServer_setSelectStateChangedHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1140
      functionLinenumberEnd: 1145
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ControlObject_installSelectStateChangedHandler
        - lookupControlObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1141,36'
          Dst:             lookupControlObject
        - Src:             'src/iec61850/server/impl/ied_server.c:1144,9'
          Dst:             ControlObject_installSelectStateChangedHandler
    - functionName:    IedServer_setWaitForExecutionHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1130
      functionLinenumberEnd: 1135
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ControlObject_installWaitForExecutionHandler
        - lookupControlObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1131,36'
          Dst:             lookupControlObject
        - Src:             'src/iec61850/server/impl/ied_server.c:1134,9'
          Dst:             ControlObject_installWaitForExecutionHandler
    - functionName:    IedServer_setPerformCheckHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1120
      functionLinenumberEnd: 1125
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ControlObject_installCheckHandler
        - lookupControlObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1121,36'
          Dst:             lookupControlObject
        - Src:             'src/iec61850/server/impl/ied_server.c:1124,9'
          Dst:             ControlObject_installCheckHandler
    - functionName:    IedServer_setControlHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1105
      functionLinenumberEnd: 1116
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ControlObject_installListener
        - lookupControlObject
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1106,36'
          Dst:             lookupControlObject
        - Src:             'src/iec61850/server/impl/ied_server.c:1109,9'
          Dst:             ControlObject_installListener
    - functionName:    IedServer_unlockDataModel
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1039
      functionLinenumberEnd: 1059
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - GOOSE_sendPendingEvents
        - MmsServer_unlockModel
        - Reporting_processReportEventsAfterUnlock
        - Semaphore_post
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1042,5'
          Dst:             GOOSE_sendPendingEvents
        - Src:             'src/iec61850/server/impl/ied_server.c:1046,5'
          Dst:             Reporting_processReportEventsAfterUnlock
        - Src:             'src/iec61850/server/impl/ied_server.c:1049,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/ied_server.c:1052,5'
          Dst:             MmsServer_unlockModel
        - Src:             'src/iec61850/server/impl/ied_server.c:1057,5'
          Dst:             Semaphore_post
    - functionName:    IedServer_lockDataModel
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1023
      functionLinenumberEnd: 1035
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsServer_lockModel
        - Semaphore_post
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1024,5'
          Dst:             MmsServer_lockModel
        - Src:             'src/iec61850/server/impl/ied_server.c:1027,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/ied_server.c:1033,5'
          Dst:             Semaphore_post
    - functionName:    IedServer_stopThreadless
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1012
      functionLinenumberEnd: 1019
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsServer_stopListeningThreadless
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1017,9'
          Dst:             MmsServer_stopListeningThreadless
    - functionName:    IedServer_addAccessPoint
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 999
      functionLinenumberEnd: 1008
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsServer_addAP
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:1002,16'
          Dst:             MmsServer_addAP
    - functionName:    IedServer_processIncomingData
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 993
      functionLinenumberEnd: 995
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsServer_handleIncomingMessages
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:994,5'
          Dst:             MmsServer_handleIncomingMessages
    - functionName:    IedServer_waitReady
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 987
      functionLinenumberEnd: 988
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsServer_waitReady
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:988,11'
          Dst:             MmsServer_waitReady
    - functionName:    IedServer_getNumberOfOpenConnections
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 981
      functionLinenumberEnd: 982
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsServer_getConnectionCounter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:982,12'
          Dst:             MmsServer_getConnectionCounter
    - functionName:    IedServer_startThreadless
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 971
      functionLinenumberEnd: 977
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsServer_startListeningThreadless
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:974,9'
          Dst:             MmsServer_startListeningThreadless
    - functionName:    IedServer_setTLSConfiguration
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 965
      functionLinenumberEnd: 967
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsServer_setTLSConfiguration
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:966,5'
          Dst:             MmsServer_setTLSConfiguration
    - functionName:    IedServer_setLocalIpAddress
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 954
      functionLinenumberEnd: 961
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
        - MmsServer_setLocalIpAddress
        - StringUtils_copyString
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:956,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/impl/ied_server.c:958,28'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/impl/ied_server.c:960,5'
          Dst:             MmsServer_setLocalIpAddress
    - functionName:    IedServer_setRequestTimeout
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 948
      functionLinenumberEnd: 950
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsServer_setRequestTimeout
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:949,5'
          Dst:             MmsServer_setRequestTimeout
    - functionName:    IedServer_setFilestoreBasepath
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 941
      functionLinenumberEnd: 944
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsServer_setFilestoreBasepath
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:943,5'
          Dst:             MmsServer_setFilestoreBasepath
    - functionName:    IedServer_getDataModel
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 911
      functionLinenumberEnd: 912
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedServer_isRunning
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 899
      functionLinenumberEnd: 907
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          44
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - MmsServer_isRunning
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:904,16'
          Dst:             MmsServer_isRunning
    - functionName:    singleThreadedServerThread
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 848
      functionLinenumberEnd: 869
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - IedServer_performPeriodicTasks
        - MmsServer_handleIncomingMessages
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:860,9'
          Dst:             MmsServer_handleIncomingMessages
        - Src:             'src/iec61850/server/impl/ied_server.c:862,9'
          Dst:             IedServer_performPeriodicTasks
    - functionName:    IedServer_start
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 876
      functionLinenumberEnd: 894
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsServer_startListeningThreadless
        - Thread_create
        - Thread_start
        - singleThreadedServerThread
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:880,9'
          Dst:             MmsServer_startListeningThreadless
        - Src:             'src/iec61850/server/impl/ied_server.c:884,30'
          Dst:             Thread_create
        - Src:             'src/iec61850/server/impl/ied_server.c:884,30'
          Dst:             singleThreadedServerThread
        - Src:             'src/iec61850/server/impl/ied_server.c:886,9'
          Dst:             Thread_start
    - functionName:    IedServer_getMmsServer
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 840
      functionLinenumberEnd: 841
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedServer_setAuthenticator
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 834
      functionLinenumberEnd: 836
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsServer_setClientAuthenticator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:835,5'
          Dst:             MmsServer_setClientAuthenticator
    - functionName:    IedServer_stop
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 918
      functionLinenumberEnd: 936
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsMapping_stopEventWorkerThread
        - MmsServer_stopListeningThreadless
        - Reporting_deactivateAllReports
        - Thread_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:923,9'
          Dst:             MmsMapping_stopEventWorkerThread
        - Src:             'src/iec61850/server/impl/ied_server.c:925,9'
          Dst:             Reporting_deactivateAllReports
        - Src:             'src/iec61850/server/impl/ied_server.c:928,9'
          Dst:             Thread_destroy
        - Src:             'src/iec61850/server/impl/ied_server.c:931,9'
          Dst:             MmsServer_stopListeningThreadless
    - functionName:    IedServer_setRCBEventHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 777
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedServer_createWithTlsSupport
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 769
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IedServer_createWithConfig
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:769,12'
          Dst:             IedServer_createWithConfig
    - functionName:    IedServer_createWithConfig
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 617
      functionLinenumberEnd: 757
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          352
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - IedServer_destroy
        - IedServer_setTimeQuality
        - LinkedList_create
        - Memory_calloc
        - MmsMapping_configureSettingGroups
        - MmsMapping_create
        - MmsMapping_getMmsDeviceModel
        - MmsMapping_initializeControlObjects
        - MmsMapping_installHandlers
        - MmsMapping_setMmsServer
        - MmsMapping_useIntegratedGoosePublisher
        - MmsServer_create
        - MmsServer_enableDynamicNamedVariableListService
        - MmsServer_enableFileService
        - MmsServer_enableJournalService
        - MmsServer_setFilestoreBasepath
        - MmsServer_setMaxAssociationSpecificDataSets
        - MmsServer_setMaxConnections
        - MmsServer_setMaxDataSetEntries
        - MmsServer_setMaxDomainSpecificDataSets
        - Reporting_activateBufferedReports
        - Semaphore_create
        - createMmsServerCache
        - installDefaultValuesInCache
        - updateDataSetsWithCachedValues
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:618,34'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/impl/ied_server.c:646,31'
          Dst:             Semaphore_create
        - Src:             'src/iec61850/server/impl/ied_server.c:647,39'
          Dst:             Semaphore_create
        - Src:             'src/iec61850/server/impl/ied_server.c:693,28'
          Dst:             MmsMapping_create
        - Src:             'src/iec61850/server/impl/ied_server.c:697,31'
          Dst:             MmsMapping_getMmsDeviceModel
        - Src:             'src/iec61850/server/impl/ied_server.c:699,31'
          Dst:             MmsServer_create
        - Src:             'src/iec61850/server/impl/ied_server.c:704,17'
          Dst:             MmsServer_enableFileService
        - Src:             'src/iec61850/server/impl/ied_server.c:705,17'
          Dst:             MmsServer_enableDynamicNamedVariableListService
        - Src:             'src/iec61850/server/impl/ied_server.c:706,17'
          Dst:             MmsServer_setMaxAssociationSpecificDataSets
        - Src:             'src/iec61850/server/impl/ied_server.c:707,17'
          Dst:             MmsServer_setMaxDomainSpecificDataSets
        - Src:             'src/iec61850/server/impl/ied_server.c:708,17'
          Dst:             MmsServer_setMaxDataSetEntries
        - Src:             'src/iec61850/server/impl/ied_server.c:709,17'
          Dst:             MmsServer_enableJournalService
        - Src:             'src/iec61850/server/impl/ied_server.c:710,17'
          Dst:             MmsServer_setFilestoreBasepath
        - Src:             'src/iec61850/server/impl/ied_server.c:711,17'
          Dst:             MmsServer_setMaxConnections
        - Src:             'src/iec61850/server/impl/ied_server.c:715,13'
          Dst:             MmsMapping_setMmsServer
        - Src:             'src/iec61850/server/impl/ied_server.c:717,13'
          Dst:             MmsMapping_installHandlers
        - Src:             'src/iec61850/server/impl/ied_server.c:719,13'
          Dst:             createMmsServerCache
        - Src:             'src/iec61850/server/impl/ied_server.c:723,13'
          Dst:             installDefaultValuesInCache
        - Src:             'src/iec61850/server/impl/ied_server.c:725,13'
          Dst:             updateDataSetsWithCachedValues
        - Src:             'src/iec61850/server/impl/ied_server.c:727,39'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/server/impl/ied_server.c:732,13'
          Dst:             MmsMapping_initializeControlObjects
        - Src:             'src/iec61850/server/impl/ied_server.c:735,13'
          Dst:             Reporting_activateBufferedReports
        - Src:             'src/iec61850/server/impl/ied_server.c:739,13'
          Dst:             MmsMapping_configureSettingGroups
        - Src:             'src/iec61850/server/impl/ied_server.c:744,17'
          Dst:             MmsMapping_useIntegratedGoosePublisher
        - Src:             'src/iec61850/server/impl/ied_server.c:748,13'
          Dst:             IedServer_setTimeQuality
        - Src:             'src/iec61850/server/impl/ied_server.c:752,13'
          Dst:             IedServer_destroy
    - functionName:    createMmsServerCache
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         34
      ICount:          228
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - MmsServer_insertIntoCache
        - MmsValue_newDefaultValue
        - StringUtils_createStringInBuffer
        - createControlObjects
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:201,21'
          Dst:             strcmp
        - Src:             'src/iec61850/server/impl/ied_server.c:203,21'
          Dst:             createControlObjects
        - Src:             'src/iec61850/server/impl/ied_server.c:208,22'
          Dst:             strcmp
        - Src:             'src/iec61850/server/impl/ied_server.c:208,53'
          Dst:             strcmp
        - Src:             'src/iec61850/server/impl/ied_server.c:211,29'
          Dst:             strcmp
        - Src:             'src/iec61850/server/impl/ied_server.c:215,29'
          Dst:             strcmp
        - Src:             'src/iec61850/server/impl/ied_server.c:215,60'
          Dst:             strcmp
        - Src:             'src/iec61850/server/impl/ied_server.c:219,29'
          Dst:             strcmp
        - Src:             'src/iec61850/server/impl/ied_server.c:226,21'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/impl/ied_server.c:228,46'
          Dst:             MmsValue_newDefaultValue
        - Src:             'src/iec61850/server/impl/ied_server.c:236,21'
          Dst:             MmsServer_insertIntoCache
    - functionName:    installDefaultValuesInCache
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 449
      functionLinenumberEnd: 493
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          126
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - StringUtils_appendString
        - StringUtils_copyStringMax
        - installDefaultValuesForDataObject
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:459,13'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/impl/ied_server.c:461,13'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/impl/ied_server.c:465,9'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/impl/ied_server.c:467,49'
          Dst:             strlen
        - Src:             'src/iec61850/server/impl/ied_server.c:473,13'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/impl/ied_server.c:477,31'
          Dst:             strlen
        - Src:             'src/iec61850/server/impl/ied_server.c:483,17'
          Dst:             installDefaultValuesForDataObject
    - functionName:    updateDataSetsWithCachedValues
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 497
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         39
      ICount:          245
      EdgeCount:       51
      CyclomaticComplexity: 14
      functionsReached:
        - IedModel_getDeviceByInst
        - MmsDevice_getDomain
        - MmsServer_getValueFromCacheEx
        - MmsValue_getElement
        - MmsVariableSpecification_getChildValue
        - StringUtils_appendString
        - StringUtils_concatString
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:500,25'
          Dst:             strlen
        - Src:             'src/iec61850/server/impl/ied_server.c:512,37'
          Dst:             IedModel_getDeviceByInst
        - Src:             'src/iec61850/server/impl/ied_server.c:518,34'
          Dst:             MmsDevice_getDomain
        - Src:             'src/iec61850/server/impl/ied_server.c:525,25'
          Dst:             StringUtils_concatString
        - Src:             'src/iec61850/server/impl/ied_server.c:527,34'
          Dst:             MmsDevice_getDomain
        - Src:             'src/iec61850/server/impl/ied_server.c:540,17'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/impl/ied_server.c:544,35'
          Dst:             MmsServer_getValueFromCacheEx
        - Src:             'src/iec61850/server/impl/ied_server.c:564,54'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/impl/ied_server.c:572,65'
          Dst:             MmsVariableSpecification_getChildValue
    - functionName:    IedServer_setTimeQuality
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2217
      functionLinenumberEnd: 2232
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - bool
        - bool
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedServer_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 781
      functionLinenumberEnd: 830
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         27
      ICount:          156
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - ClientConnection_release
        - IedServer_stop
        - LinkedList_destroyDeep
        - Memory_free
        - MmsMapping_destroy
        - MmsServer_destroy
        - Semaphore_destroy
        - Thread_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:790,13'
          Dst:             IedServer_stop
        - Src:             'src/iec61850/server/impl/ied_server.c:797,13'
          Dst:             Thread_destroy
        - Src:             'src/iec61850/server/impl/ied_server.c:801,9'
          Dst:             MmsServer_destroy
        - Src:             'src/iec61850/server/impl/ied_server.c:804,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/impl/ied_server.c:807,13'
          Dst:             MmsMapping_destroy
        - Src:             'src/iec61850/server/impl/ied_server.c:809,9'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/iec61850/server/impl/ied_server.c:809,9'
          Dst:             ClientConnection_release
        - Src:             'src/iec61850/server/impl/ied_server.c:812,9'
          Dst:             Semaphore_destroy
        - Src:             'src/iec61850/server/impl/ied_server.c:813,9'
          Dst:             Semaphore_destroy
        - Src:             'src/iec61850/server/impl/ied_server.c:819,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/impl/ied_server.c:822,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/impl/ied_server.c:825,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/impl/ied_server.c:828,9'
          Dst:             Memory_free
    - functionName:    IedServer_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/ied_server.c'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IedServer_createWithConfig
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/ied_server.c:763,12'
          Dst:             IedServer_createWithConfig
    - functionName:    private_ClientConnection_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
        - Semaphore_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/client_connection.c:103,9'
          Dst:             Semaphore_destroy
        - Src:             'src/iec61850/server/impl/client_connection.c:110,9'
          Dst:             Memory_free
    - functionName:    ClientConnection_release
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 329
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          43
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - private_ClientConnection_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/client_connection.c:325,13'
          Dst:             private_ClientConnection_destroy
    - functionName:    ClientConnection_claimOwnership
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ClientConnection_abort
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          71
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsServerConnection_getServer
        - MmsServer_abortConnection
        - Semaphore_post
        - Semaphore_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/client_connection.c:253,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/client_connection.c:262,35'
          Dst:             MmsServerConnection_getServer
        - Src:             'src/iec61850/server/impl/client_connection.c:264,23'
          Dst:             MmsServer_abortConnection
        - Src:             'src/iec61850/server/impl/client_connection.c:275,5'
          Dst:             Semaphore_post
    - functionName:    ClientConnection_getSecurityToken
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsServerConnection_getSecurityToken
        - Semaphore_post
        - Semaphore_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/client_connection.c:230,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/client_connection.c:237,21'
          Dst:             MmsServerConnection_getSecurityToken
        - Src:             'src/iec61850/server/impl/client_connection.c:241,5'
          Dst:             Semaphore_post
    - functionName:    ClientConnection_getLocalAddress
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsServerConnection_getLocalAddress
        - Semaphore_post
        - Semaphore_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/client_connection.c:207,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/client_connection.c:214,24'
          Dst:             MmsServerConnection_getLocalAddress
        - Src:             'src/iec61850/server/impl/client_connection.c:218,5'
          Dst:             Semaphore_post
    - functionName:    ClientConnection_getPeerAddress
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsServerConnection_getClientAddress
        - Semaphore_post
        - Semaphore_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/client_connection.c:184,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/client_connection.c:191,23'
          Dst:             MmsServerConnection_getClientAddress
        - Src:             'src/iec61850/server/impl/client_connection.c:195,5'
          Dst:             Semaphore_post
    - functionName:    private_ClientConnection_getServerConnectionHandle
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/client_connection.c:166,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/client_connection.c:172,5'
          Dst:             Semaphore_post
    - functionName:    private_ClientConnection_decreaseTasksCount
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/client_connection.c:150,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/client_connection.c:156,5'
          Dst:             Semaphore_post
    - functionName:    private_ClientConnection_increaseTasksCount
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/client_connection.c:136,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/client_connection.c:142,5'
          Dst:             Semaphore_post
    - functionName:    private_ClientConnection_getTasksCount
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/client_connection.c:120,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/client_connection.c:126,5'
          Dst:             Semaphore_post
    - functionName:    private_ClientConnection_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_malloc
        - Semaphore_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/client_connection.c:77,48'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/impl/client_connection.c:82,29'
          Dst:             Semaphore_create
    - functionName:    private_ClientConnection_invalidate
      functionSourceFile: '/src/libiec61850/src/iec61850/server/impl/client_connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/impl/client_connection.c:64,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/impl/client_connection.c:70,5'
          Dst:             Semaphore_post
    - functionName:    LogicalDevice_getSettingGroupControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 995
      functionLinenumberEnd: 1022
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          74
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - LogicalDevice_getLogicalNode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:1001,23'
          Dst:             LogicalDevice_getLogicalNode
    - functionName:    LogicalDevice_getLogicalNode
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 989
      functionLinenumberEnd: 990
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ModelNode_getChild
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:990,26'
          Dst:             ModelNode_getChild
    - functionName:    ModelNode_getChild
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 735
      functionLinenumberEnd: 849
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         45
      ICount:          289
      EdgeCount:       61
      CyclomaticComplexity: 18
      functionsReached:
        - ModelNode_getChild
        - ModelNode_getChildWithIdx
        - memcmp
        - strchr
        - strlen
        - strtol
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:737,29'
          Dst:             strchr
        - Src:             'src/iec61850/server/model/model.c:744,34'
          Dst:             strchr
        - Src:             'src/iec61850/server/model/model.c:748,39'
          Dst:             strchr
        - Src:             'src/iec61850/server/model/model.c:752,28'
          Dst:             strtol
        - Src:             'src/iec61850/server/model/model.c:758,29'
          Dst:             ModelNode_getChildWithIdx
        - Src:             'src/iec61850/server/model/model.c:777,40'
          Dst:             ModelNode_getChild
        - Src:             'src/iec61850/server/model/model.c:781,33'
          Dst:             ModelNode_getChildWithIdx
        - Src:             'src/iec61850/server/model/model.c:796,32'
          Dst:             ModelNode_getChild
        - Src:             'src/iec61850/server/model/model.c:798,32'
          Dst:             ModelNode_getChild
        - Src:             'src/iec61850/server/model/model.c:816,29'
          Dst:             strlen
        - Src:             'src/iec61850/server/model/model.c:829,27'
          Dst:             strlen
        - Src:             'src/iec61850/server/model/model.c:833,17'
          Dst:             memcmp
        - Src:             'src/iec61850/server/model/model.c:845,16'
          Dst:             ModelNode_getChild
    - functionName:    ModelNode_getChildWithIdx
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 853
      functionLinenumberEnd: 876
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          72
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ModelNode_getChildren
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 969
      functionLinenumberEnd: 984
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_add
        - LinkedList_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:973,22'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/server/model/model.c:979,9'
          Dst:             LinkedList_add
    - functionName:    ModelNode_getParent
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 963
      functionLinenumberEnd: 964
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ModelNode_getName
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 957
      functionLinenumberEnd: 958
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ModelNode_getType
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 951
      functionLinenumberEnd: 952
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ModelNode_getChildCount
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 719
      functionLinenumberEnd: 730
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    createObjectReference
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 677
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          341
      EdgeCount:       63
      CyclomaticComplexity: 17
      functionsReached:
        - StringUtils_appendString
        - StringUtils_concatString
        - StringUtils_copyStringMax
        - createObjectReference
        - snprintf
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:574,18'
          Dst:             createObjectReference
        - Src:             'src/iec61850/server/model/model.c:609,13'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/model/model.c:615,17'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/model/model.c:619,17'
          Dst:             StringUtils_concatString
        - Src:             'src/iec61850/server/model/model.c:623,19'
          Dst:             strlen
        - Src:             'src/iec61850/server/model/model.c:634,26'
          Dst:             strlen
        - Src:             'src/iec61850/server/model/model.c:656,9'
          Dst:             snprintf
        - Src:             'src/iec61850/server/model/model.c:658,35'
          Dst:             strlen
    - functionName:    ModelNode_getObjectReferenceEx
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 687
      functionLinenumberEnd: 715
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          93
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - Memory_free
        - Memory_malloc
        - createObjectReference
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:692,34'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/model/model.c:698,22'
          Dst:             createObjectReference
        - Src:             'src/iec61850/server/model/model.c:703,17'
          Dst:             Memory_free
    - functionName:    ModelNode_getObjectReference
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 682
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ModelNode_getObjectReferenceEx
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:682,12'
          Dst:             ModelNode_getObjectReferenceEx
    - functionName:    ModelNode_getChildWithFc
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 881
      functionLinenumberEnd: 947
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          193
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - ModelNode_getChildWithFc
        - memcmp
        - strchr
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:883,29'
          Dst:             strchr
        - Src:             'src/iec61850/server/model/model.c:890,29'
          Dst:             strlen
        - Src:             'src/iec61850/server/model/model.c:898,27'
          Dst:             strlen
        - Src:             'src/iec61850/server/model/model.c:902,17'
          Dst:             memcmp
        - Src:             'src/iec61850/server/model/model.c:943,16'
          Dst:             ModelNode_getChildWithFc
    - functionName:    LogicalDevice_getChildByMmsVariableName
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 519
      functionLinenumberEnd: 564
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          132
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - FunctionalConstraint_fromString
        - ModelNode_getChildWithFc
        - StringUtils_replace
        - strchr
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:520,29'
          Dst:             strchr
        - Src:             'src/iec61850/server/model/model.c:525,9'
          Dst:             strlen
        - Src:             'src/iec61850/server/model/model.c:556,9'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/server/model/model.c:558,35'
          Dst:             FunctionalConstraint_fromString
        - Src:             'src/iec61850/server/model/model.c:560,16'
          Dst:             ModelNode_getChildWithFc
    - functionName:    LogicalDevice_getLogicalNodeCount
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 503
      functionLinenumberEnd: 514
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LogicalNode_getDataSet
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 460
      functionLinenumberEnd: 499
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          95
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - StringUtils_createStringInBuffer
        - strcmp
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:468,9'
          Dst:             strlen
        - Src:             'src/iec61850/server/model/model.c:478,5'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/model/model.c:486,13'
          Dst:             strcmp
        - Src:             'src/iec61850/server/model/model.c:488,17'
          Dst:             strcmp
    - functionName:    LogicalNode_hasFCData
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 444
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - DataObject_hasFCData
      functionUses:    27
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:449,13'
          Dst:             DataObject_hasFCData
    - functionName:    DataObject_hasFCData
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 418
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          85
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - DataObject_hasFCData
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:432,17'
          Dst:             DataObject_hasFCData
    - functionName:    IedModel_getModelNodeByShortObjectReference
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 414
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          85
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - IedModel_getDeviceByInst
        - ModelNode_getChild
        - StringUtils_copyStringMax
        - strchr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:388,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/model/model.c:390,23'
          Dst:             strchr
        - Src:             'src/iec61850/server/model/model.c:396,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/model/model.c:398,25'
          Dst:             IedModel_getDeviceByInst
        - Src:             'src/iec61850/server/model/model.c:413,12'
          Dst:             ModelNode_getChild
    - functionName:    IedModel_getDeviceByInst
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:196,13'
          Dst:             strcmp
    - functionName:    IedModel_getSVControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 360
      functionLinenumberEnd: 376
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          66
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:367,44'
          Dst:             strcmp
    - functionName:    IedModel_getModelNodeByObjectReference
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          81
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - IedModel_getDevice
        - ModelNode_getChild
        - StringUtils_copyStringMax
        - strchr
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:338,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/model/model.c:340,23'
          Dst:             strchr
        - Src:             'src/iec61850/server/model/model.c:345,25'
          Dst:             IedModel_getDevice
        - Src:             'src/iec61850/server/model/model.c:353,12'
          Dst:             ModelNode_getChild
    - functionName:    IedModel_getDevice
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          84
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - StringUtils_concatString
        - strcmp
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:169,17'
          Dst:             strcmp
        - Src:             'src/iec61850/server/model/model.c:177,13'
          Dst:             StringUtils_concatString
        - Src:             'src/iec61850/server/model/model.c:179,17'
          Dst:             strcmp
    - functionName:    getChildWithShortAddress
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          83
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - getChildWithShortAddress
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:286,33'
          Dst:             getChildWithShortAddress
    - functionName:    IedModel_getModelNodeByShortAddress
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 329
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          90
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - getChildWithShortAddress
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:314,43'
          Dst:             getChildWithShortAddress
    - functionName:    ModelNode_getDataAttributeByMmsValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          82
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - ModelNode_getDataAttributeByMmsValue
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:240,29'
          Dst:             ModelNode_getDataAttributeByMmsValue
    - functionName:    IedModel_lookupDataAttributeByMmsValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ModelNode_getDataAttributeByMmsValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:258,29'
          Dst:             ModelNode_getDataAttributeByMmsValue
    - functionName:    IedModel_getDeviceByIndex
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          47
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedModel_lookupDataSet
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          175
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - IedModel_getDeviceByInst
        - StringUtils_appendString
        - strchr
        - strcmp
        - strlen
        - strncmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:104,29'
          Dst:             strchr
        - Src:             'src/iec61850/server/model/model.c:113,24'
          Dst:             strlen
        - Src:             'src/iec61850/server/model/model.c:122,29'
          Dst:             IedModel_getDeviceByInst
        - Src:             'src/iec61850/server/model/model.c:130,17'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/model/model.c:132,21'
          Dst:             strncmp
        - Src:             'src/iec61850/server/model/model.c:134,25'
          Dst:             strcmp
        - Src:             'src/iec61850/server/model/model.c:143,21'
          Dst:             strncmp
        - Src:             'src/iec61850/server/model/model.c:145,25'
          Dst:             strcmp
    - functionName:    IedModel_getLogicalDeviceCount
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          48
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setAttributeValuesToNull
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - setAttributeValuesToNull
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:43,9'
          Dst:             setAttributeValuesToNull
    - functionName:    IedModel_setAttributeValuesToNull
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - setAttributeValuesToNull
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/model.c:69,17'
          Dst:             setAttributeValuesToNull
    - functionName:    IedModel_setIedName
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DataAttribute_getLastChild
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 735
      functionLinenumberEnd: 746
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LogicalNode_getLastDataObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DataObject_getLastChild
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 655
      functionLinenumberEnd: 666
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedModel_addSMVControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          48
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedModel_addGSEControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          48
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedModel_addSettingGroupControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          48
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedModel_addReportControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          48
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedModel_addLogControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          48
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedModel_addLog
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          48
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LogicalDevice_getLastLogicalNode
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 256
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ModelNode_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 968
      functionLinenumberEnd: 998
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          96
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - Memory_free
        - MmsValue_delete
        - ModelNode_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:972,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:980,13'
          Dst:             ModelNode_destroy
        - Src:             'src/iec61850/server/model/dynamic_model.c:991,17'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/server/model/dynamic_model.c:996,9'
          Dst:             Memory_free
    - functionName:    IedModel_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1002
      functionLinenumberEnd: 1181
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         72
      ICount:          460
      EdgeCount:       95
      CyclomaticComplexity: 25
      functionsReached:
        - Memory_free
        - ModelNode_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:1014,17'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1017,17'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1023,17'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1033,21'
          Dst:             ModelNode_destroy
        - Src:             'src/iec61850/server/model/dynamic_model.c:1041,17'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1047,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1058,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1067,21'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1069,17'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1072,21'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1074,17'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1079,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1092,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1095,17'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1098,17'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1100,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1113,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1114,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1115,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1118,17'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1120,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1133,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1146,17'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1149,17'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1152,17'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1154,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1167,17'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1169,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1177,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:1179,9'
          Dst:             Memory_free
    - functionName:    DataSet_addEntry
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 900
      functionLinenumberEnd: 919
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          61
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DataSetEntry_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 923
      functionLinenumberEnd: 963
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          112
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - DataSet_addEntry
        - Memory_malloc
        - StringUtils_copyString
        - StringUtils_copyStringMax
        - strchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:924,41'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/model/dynamic_model.c:930,9'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/model/dynamic_model.c:932,27'
          Dst:             strchr
        - Src:             'src/iec61850/server/model/dynamic_model.c:938,34'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:939,39'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:944,34'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:950,35'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:960,9'
          Dst:             DataSet_addEntry
    - functionName:    DataSetEntry_getNext
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 894
      functionLinenumberEnd: 895
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DataSet_getFirstEntry
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 888
      functionLinenumberEnd: 889
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DataSet_getSize
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 882
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DataSet_getName
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 876
      functionLinenumberEnd: 877
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedModel_addDataSet
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          56
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DataSet_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 855
      functionLinenumberEnd: 871
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - IedModel_addDataSet
        - Memory_malloc
        - StringUtils_createString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:856,32'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/model/dynamic_model.c:862,22'
          Dst:             StringUtils_createString
        - Src:             'src/iec61850/server/model/dynamic_model.c:868,9'
          Dst:             IedModel_addDataSet
    - functionName:    DataAttribute_setValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 842
      functionLinenumberEnd: 851
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_clone
        - MmsValue_update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:845,9'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/model/dynamic_model.c:849,26'
          Dst:             MmsValue_clone
    - functionName:    DataAttribute_getTrgOps
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 836
      functionLinenumberEnd: 837
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DataAttribute_getFC
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 830
      functionLinenumberEnd: 831
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DataAttribute_getType
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 824
      functionLinenumberEnd: 825
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DataAttribute_addChild
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 751
      functionLinenumberEnd: 762
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - DataAttribute_getLastChild
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:758,32'
          Dst:             DataAttribute_getLastChild
    - functionName:    DataAttribute_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 767
      functionLinenumberEnd: 819
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - char
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          199
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - DataAttribute_addChild
        - DataObject_addChild
        - Memory_malloc
        - StringUtils_copyString
      functionUses:    163
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:768,44'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/model/dynamic_model.c:772,22'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:791,64'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/model/dynamic_model.c:808,21'
          Dst:             DataAttribute_addChild
        - Src:             'src/iec61850/server/model/dynamic_model.c:814,13'
          Dst:             DataObject_addChild
        - Src:             'src/iec61850/server/model/dynamic_model.c:816,13'
          Dst:             DataAttribute_addChild
    - functionName:    DataObject_addChild
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 671
      functionLinenumberEnd: 682
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - DataObject_getLastChild
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:678,32'
          Dst:             DataObject_getLastChild
    - functionName:    LogicalNode_addDataObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 323
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LogicalNode_getLastDataObject
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:330,38'
          Dst:             LogicalNode_getLastDataObject
    - functionName:    DataObject_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 686
      functionLinenumberEnd: 730
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          153
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - DataObject_addChild
        - LogicalNode_addDataObject
        - Memory_malloc
        - StringUtils_copyString
      functionUses:    36
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:687,38'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/model/dynamic_model.c:691,22'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:706,58'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/model/dynamic_model.c:719,21'
          Dst:             DataObject_addChild
        - Src:             'src/iec61850/server/model/dynamic_model.c:725,13'
          Dst:             LogicalNode_addDataObject
        - Src:             'src/iec61850/server/model/dynamic_model.c:727,13'
          Dst:             DataObject_addChild
    - functionName:    PhyComAddress_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 638
      functionLinenumberEnd: 650
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - char
        - short
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_malloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:639,44'
          Dst:             Memory_malloc
    - functionName:    GSEControlBlock_addPhyComAddress
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 634
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SVControlBlock_addPhyComAddress
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 626
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SVControlBlock_getName
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 620
      functionLinenumberEnd: 621
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LogicalNode_addSMVControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 575
      functionLinenumberEnd: 579
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IedModel_addSMVControlBlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:578,5'
          Dst:             IedModel_addSMVControlBlock
    - functionName:    SVControlBlock_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 614
      functionDepth:   0
      returnType:      'N/A'
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - char
        - short
        - char
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          117
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - LogicalNode_addSMVControlBlock
        - Memory_malloc
        - StringUtils_copyString
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:585,46'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/model/dynamic_model.c:589,22'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:592,22'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:595,33'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:611,13'
          Dst:             LogicalNode_addSMVControlBlock
    - functionName:    LogicalNode_addGSEControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 530
      functionLinenumberEnd: 534
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IedModel_addGSEControlBlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:533,5'
          Dst:             IedModel_addGSEControlBlock
    - functionName:    GSEControlBlock_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 570
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          125
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - LogicalNode_addGSEControlBlock
        - Memory_malloc
        - StringUtils_copyString
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:540,48'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/model/dynamic_model.c:544,22'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:548,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:553,33'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:567,13'
          Dst:             LogicalNode_addGSEControlBlock
    - functionName:    LogicalNode_addSettingGroupControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IedModel_addSettingGroupControlBlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:502,5'
          Dst:             IedModel_addSettingGroupControlBlock
    - functionName:    SettingGroupControlBlock_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 524
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LogicalNode_addSettingGroupControlBlock
        - Memory_malloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:511,66'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/model/dynamic_model.c:521,9'
          Dst:             LogicalNode_addSettingGroupControlBlock
    - functionName:    ReportControlBlock_isBuffered
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 492
      functionLinenumberEnd: 493
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ReportControlBlock_getParent
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 486
      functionLinenumberEnd: 487
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ReportControlBlock_getName
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 481
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ReportControlBlock_setPreconfiguredClient
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          57
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LogicalNode_addReportControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 420
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IedModel_addReportControlBlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:419,5'
          Dst:             IedModel_addReportControlBlock
    - functionName:    ReportControlBlock_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 425
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      'N/A'
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - int
        - char
        - char
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          127
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - LogicalNode_addReportControlBlock
        - Memory_malloc
        - StringUtils_copyString
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:426,54'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/model/dynamic_model.c:430,22'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:434,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:441,33'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:453,9'
          Dst:             LogicalNode_addReportControlBlock
    - functionName:    LogControlBlock_getParent
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 411
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LogControlBlock_getName
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LogicalNode_addLogControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 363
      functionLinenumberEnd: 367
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IedModel_addLogControlBlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:366,5'
          Dst:             IedModel_addLogControlBlock
    - functionName:    LogControlBlock_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 372
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
        - int
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          114
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - LogicalNode_addLogControlBlock
        - Memory_malloc
        - StringUtils_copyString
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:373,48'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/model/dynamic_model.c:377,22'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:382,33'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:387,28'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:396,9'
          Dst:             LogicalNode_addLogControlBlock
    - functionName:    LogicalNode_addLog
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - IedModel_addLog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:341,5'
          Dst:             IedModel_addLog
    - functionName:    Log_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LogicalNode_addLog
        - Memory_malloc
        - StringUtils_copyString
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:347,24'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/model/dynamic_model.c:351,22'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:355,9'
          Dst:             LogicalNode_addLog
    - functionName:    LogicalDevice_addLogicalNode
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LogicalDevice_getLastLogicalNode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:279,33'
          Dst:             LogicalDevice_getLastLogicalNode
    - functionName:    LogicalNode_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LogicalDevice_addLogicalNode
        - Memory_malloc
        - StringUtils_copyString
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:288,40'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/model/dynamic_model.c:292,22'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:298,9'
          Dst:             LogicalDevice_addLogicalNode
    - functionName:    LogicalDevice_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 251
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - LogicalDevice_createEx
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:251,12'
          Dst:             LogicalDevice_createEx
    - functionName:    LogicalDevice_createEx
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - IedModel_addLogicalDevice
        - Memory_calloc
        - StringUtils_copyString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:228,43'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/model/dynamic_model.c:232,22'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:238,28'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/model/dynamic_model.c:242,9'
          Dst:             IedModel_addLogicalDevice
    - functionName:    IedModel_addLogicalDevice
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          48
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iedModel_emptyVariableInitializer
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IedModel_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_calloc
        - StringUtils_copyString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:46,33'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/model/dynamic_model.c:51,26'
          Dst:             StringUtils_copyString
    - functionName:    IedModel_setIedNameForDynamicModel
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/dynamic_model.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
        - StringUtils_copyString
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/dynamic_model.c:38,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/model/dynamic_model.c:40,18'
          Dst:             StringUtils_copyString
    - functionName:    addCommonOperateElements
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - DataAttribute_create
        - addOriginator
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:151,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:153,5'
          Dst:             addOriginator
        - Src:             'src/iec61850/server/model/cdc.c:155,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:156,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:157,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:160,9'
          Dst:             DataAttribute_create
    - functionName:    addOriginator
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DataAttribute_create
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:122,29'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:124,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:125,5'
          Dst:             DataAttribute_create
    - functionName:    addGenericOperateElements
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - DataAttribute_create
        - addOriginator
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:132,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:135,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:137,5'
          Dst:             addOriginator
        - Src:             'src/iec61850/server/model/cdc.c:139,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:140,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:141,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:144,9'
          Dst:             DataAttribute_create
    - functionName:    CDA_Cancel
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DataAttribute_create
        - addGenericOperateElements
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:186,28'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:188,5'
          Dst:             addGenericOperateElements
    - functionName:    CDA_Oper
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DataAttribute_create
        - addGenericOperateElements
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:166,28'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:168,5'
          Dst:             addGenericOperateElements
    - functionName:    CDA_SBOw
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DataAttribute_create
        - addGenericOperateElements
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:176,28'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:178,5'
          Dst:             addGenericOperateElements
    - functionName:    CDC_TMS_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1313
      functionLinenumberEnd: 1345
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          141
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - CDC_INC_create
        - CDC_INS_create
        - CDC_SPC_create
        - CDC_addStandardOptions
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:1316,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:1318,5'
          Dst:             CDC_SPC_create
        - Src:             'src/iec61850/server/model/cdc.c:1321,9'
          Dst:             CDC_INC_create
        - Src:             'src/iec61850/server/model/cdc.c:1323,5'
          Dst:             CDC_INS_create
        - Src:             'src/iec61850/server/model/cdc.c:1325,5'
          Dst:             CDC_INS_create
        - Src:             'src/iec61850/server/model/cdc.c:1328,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1331,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1334,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1337,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1340,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1343,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_SPC_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          97
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - CDC_addOptionPicsSubst
        - CDC_addStandardOptions
        - CDC_addStatusToDataObject
        - DataAttribute_create
        - DataObject_create
        - addCommonControlAttributes
        - addControls
        - addOriginatorAndCtlNumOptions
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:580,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:582,5'
          Dst:             addOriginatorAndCtlNumOptions
        - Src:             'src/iec61850/server/model/cdc.c:584,5'
          Dst:             CDC_addStatusToDataObject
        - Src:             'src/iec61850/server/model/cdc.c:586,5'
          Dst:             addControls
        - Src:             'src/iec61850/server/model/cdc.c:589,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:591,5'
          Dst:             addCommonControlAttributes
        - Src:             'src/iec61850/server/model/cdc.c:594,9'
          Dst:             CDC_addOptionPicsSubst
        - Src:             'src/iec61850/server/model/cdc.c:597,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:599,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_INC_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 730
      functionLinenumberEnd: 761
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          142
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - CDC_addOptionPicsSubst
        - CDC_addStandardOptions
        - CDC_addStatusToDataObject
        - DataAttribute_create
        - DataObject_create
        - addCommonControlAttributes
        - addControls
        - addOriginatorAndCtlNumOptions
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:731,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:733,5'
          Dst:             addOriginatorAndCtlNumOptions
        - Src:             'src/iec61850/server/model/cdc.c:735,5'
          Dst:             CDC_addStatusToDataObject
        - Src:             'src/iec61850/server/model/cdc.c:737,5'
          Dst:             addControls
        - Src:             'src/iec61850/server/model/cdc.c:740,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:742,5'
          Dst:             addCommonControlAttributes
        - Src:             'src/iec61850/server/model/cdc.c:745,9'
          Dst:             CDC_addOptionPicsSubst
        - Src:             'src/iec61850/server/model/cdc.c:748,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:751,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:754,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:757,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:759,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_INS_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          71
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - CDC_addOptionPicsSubst
        - CDC_addStandardOptions
        - CDC_addStatusToDataObject
        - DataAttribute_create
        - DataObject_create
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:294,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:296,5'
          Dst:             CDC_addStatusToDataObject
        - Src:             'src/iec61850/server/model/cdc.c:299,9'
          Dst:             CDC_addOptionPicsSubst
        - Src:             'src/iec61850/server/model/cdc.c:302,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:304,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_addStandardOptions
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          77
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - DataAttribute_create
      functionUses:    36
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:237,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:240,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:243,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:244,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:248,9'
          Dst:             DataAttribute_create
    - functionName:    CDC_addStatusToDataObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - CDC_addTimeQuality
        - DataAttribute_create
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:207,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:208,5'
          Dst:             CDC_addTimeQuality
    - functionName:    CDC_addOptionPicsSubst
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DataAttribute_create
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:214,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:215,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:216,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:217,5'
          Dst:             DataAttribute_create
    - functionName:    CDC_addTimeQuality
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 202
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DataAttribute_create
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:200,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:201,5'
          Dst:             DataAttribute_create
    - functionName:    addOriginatorAndCtlNumOptions
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 547
      functionLinenumberEnd: 553
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - DataAttribute_create
        - addOriginator
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:549,9'
          Dst:             addOriginator
        - Src:             'src/iec61850/server/model/cdc.c:552,9'
          Dst:             DataAttribute_create
    - functionName:    addControls
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 516
      functionLinenumberEnd: 543
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          110
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - CDA_Cancel
        - CDA_Oper
        - CDA_SBOw
        - DataAttribute_create
        - MmsValue_newIntegerFromInt16
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:518,13'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:522,26'
          Dst:             MmsValue_newIntegerFromInt16
        - Src:             'src/iec61850/server/model/cdc.c:527,13'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:535,13'
          Dst:             CDA_SBOw
        - Src:             'src/iec61850/server/model/cdc.c:537,9'
          Dst:             CDA_Oper
        - Src:             'src/iec61850/server/model/cdc.c:540,13'
          Dst:             CDA_Cancel
    - functionName:    addCommonControlAttributes
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 557
      functionLinenumberEnd: 566
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          60
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - DataAttribute_create
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:559,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:562,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:565,9'
          Dst:             DataAttribute_create
    - functionName:    CDC_CTE_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1272
      functionLinenumberEnd: 1303
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          141
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - CDC_INC_create
        - CDC_INS_create
        - CDC_SPC_create
        - CDC_addStandardOptions
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:1275,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:1277,5'
          Dst:             CDC_SPC_create
        - Src:             'src/iec61850/server/model/cdc.c:1280,9'
          Dst:             CDC_INC_create
        - Src:             'src/iec61850/server/model/cdc.c:1282,5'
          Dst:             CDC_INS_create
        - Src:             'src/iec61850/server/model/cdc.c:1284,5'
          Dst:             CDC_INS_create
        - Src:             'src/iec61850/server/model/cdc.c:1287,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1290,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1293,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1296,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1299,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1301,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_CMD_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1243
      functionLinenumberEnd: 1259
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - bool
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          87
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - CDC_INC_create
        - CDC_INS_create
        - CDC_addStandardOptions
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:1247,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:1249,5'
          Dst:             CDC_INC_create
        - Src:             'src/iec61850/server/model/cdc.c:1252,9'
          Dst:             CDC_INS_create
        - Src:             'src/iec61850/server/model/cdc.c:1255,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1257,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_ALM_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1217
      functionLinenumberEnd: 1232
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - CDC_INS_create
        - CDC_SPC_create
        - CDC_addStandardOptions
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:1221,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:1223,5'
          Dst:             CDC_SPC_create
        - Src:             'src/iec61850/server/model/cdc.c:1225,5'
          Dst:             CDC_INS_create
        - Src:             'src/iec61850/server/model/cdc.c:1228,9'
          Dst:             CDC_INS_create
        - Src:             'src/iec61850/server/model/cdc.c:1230,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_STV_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1195
      functionLinenumberEnd: 1208
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - CDC_INS_create
        - CDC_addStandardOptions
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:1199,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:1201,5'
          Dst:             CDC_INS_create
        - Src:             'src/iec61850/server/model/cdc.c:1204,9'
          Dst:             CDC_INS_create
        - Src:             'src/iec61850/server/model/cdc.c:1206,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_SPV_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1147
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          201
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - CAC_AnalogueValue_create
        - CAC_Unit_create
        - CDC_APC_create
        - CDC_SPC_create
        - CDC_addStandardOptions
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:1148,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:1151,9'
          Dst:             CDC_SPC_create
        - Src:             'src/iec61850/server/model/cdc.c:1153,5'
          Dst:             CDC_APC_create
        - Src:             'src/iec61850/server/model/cdc.c:1158,9'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:1161,9'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:1164,9'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:1167,9'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:1170,9'
          Dst:             CAC_Unit_create
        - Src:             'src/iec61850/server/model/cdc.c:1173,9'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:1176,9'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:1179,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1182,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1184,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_APC_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 697
      functionLinenumberEnd: 725
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          114
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - CAC_AnalogueValue_create
        - CDC_addStandardOptions
        - CDC_addTimeQuality
        - DataAttribute_create
        - DataObject_create
        - addAnalogControls
        - addCommonControlAttributes
        - addControlStatusAttributesForAnalogControl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:698,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:700,5'
          Dst:             addControlStatusAttributesForAnalogControl
        - Src:             'src/iec61850/server/model/cdc.c:702,5'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:704,5'
          Dst:             CDC_addTimeQuality
        - Src:             'src/iec61850/server/model/cdc.c:707,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:709,5'
          Dst:             addCommonControlAttributes
        - Src:             'src/iec61850/server/model/cdc.c:712,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:713,9'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:714,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:715,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:719,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:721,5'
          Dst:             addAnalogControls
        - Src:             'src/iec61850/server/model/cdc.c:723,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CAC_AnalogueValue_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - char
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - DataAttribute_create
      functionUses:    27
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:38,77'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:41,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:43,9'
          Dst:             DataAttribute_create
    - functionName:    CAC_Unit_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - DataAttribute_create
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:105,69'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:107,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:110,9'
          Dst:             DataAttribute_create
    - functionName:    addControlStatusAttributesForAnalogControl
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 687
      functionLinenumberEnd: 693
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - DataAttribute_create
        - addOriginator
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:689,9'
          Dst:             addOriginator
        - Src:             'src/iec61850/server/model/cdc.c:692,9'
          Dst:             DataAttribute_create
    - functionName:    addAnalogControls
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 642
      functionLinenumberEnd: 683
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          132
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - CAC_AnalogueValue_create
        - DataAttribute_create
        - MmsValue_newIntegerFromInt16
        - addCommonOperateElements
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:644,13'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:648,26'
          Dst:             MmsValue_newIntegerFromInt16
        - Src:             'src/iec61850/server/model/cdc.c:653,13'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:661,36'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:663,13'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:665,13'
          Dst:             addCommonOperateElements
        - Src:             'src/iec61850/server/model/cdc.c:668,32'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:670,9'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:672,9'
          Dst:             addCommonOperateElements
        - Src:             'src/iec61850/server/model/cdc.c:675,38'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:677,13'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:679,13'
          Dst:             addCommonOperateElements
    - functionName:    CDC_ASG_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1116
      functionLinenumberEnd: 1138
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          131
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - CAC_AnalogueValue_create
        - CAC_ScaledValueConfig_create
        - CAC_Unit_create
        - CDC_addStandardOptions
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:1117,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:1119,5'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:1122,9'
          Dst:             CAC_Unit_create
        - Src:             'src/iec61850/server/model/cdc.c:1125,9'
          Dst:             CAC_ScaledValueConfig_create
        - Src:             'src/iec61850/server/model/cdc.c:1128,9'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:1131,9'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:1134,9'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:1136,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CAC_ScaledValueConfig_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - DataAttribute_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:94,72'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:96,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:97,5'
          Dst:             DataAttribute_create
    - functionName:    CDC_ING_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1091
      functionLinenumberEnd: 1111
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          105
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - CAC_Unit_create
        - CDC_addStandardOptions
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:1092,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:1094,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1097,9'
          Dst:             CAC_Unit_create
        - Src:             'src/iec61850/server/model/cdc.c:1100,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1103,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1106,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1108,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_ENG_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1079
      functionLinenumberEnd: 1086
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - CDC_addStandardOptions
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:1080,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:1082,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1084,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_VSG_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1066
      functionLinenumberEnd: 1073
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - CDC_addStandardOptions
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:1067,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:1069,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1071,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_SPG_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1054
      functionLinenumberEnd: 1061
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - CDC_addStandardOptions
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:1055,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:1057,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1059,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_DEL_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1035
      functionLinenumberEnd: 1048
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - CDC_CMV_create
        - CDC_addStandardOptions
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:1036,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:1039,5'
          Dst:             CDC_CMV_create
        - Src:             'src/iec61850/server/model/cdc.c:1040,5'
          Dst:             CDC_CMV_create
        - Src:             'src/iec61850/server/model/cdc.c:1041,5'
          Dst:             CDC_CMV_create
        - Src:             'src/iec61850/server/model/cdc.c:1044,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1046,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_CMV_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 434
      functionLinenumberEnd: 455
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          90
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - CAC_Vector_create
        - CDC_addStandardOptions
        - CDC_addTimeQuality
        - DataAttribute_create
        - DataObject_create
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:435,74'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:438,9'
          Dst:             CAC_Vector_create
        - Src:             'src/iec61850/server/model/cdc.c:440,5'
          Dst:             CAC_Vector_create
        - Src:             'src/iec61850/server/model/cdc.c:443,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:446,12'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:448,5'
          Dst:             CDC_addTimeQuality
        - Src:             'src/iec61850/server/model/cdc.c:453,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CAC_Vector_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - CAC_AnalogueValue_create
        - DataAttribute_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:67,71'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:69,5'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:72,9'
          Dst:             CAC_AnalogueValue_create
    - functionName:    CDC_WYE_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1012
      functionLinenumberEnd: 1029
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - CDC_CMV_create
        - CDC_addStandardOptions
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:1013,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:1017,5'
          Dst:             CDC_CMV_create
        - Src:             'src/iec61850/server/model/cdc.c:1018,5'
          Dst:             CDC_CMV_create
        - Src:             'src/iec61850/server/model/cdc.c:1019,5'
          Dst:             CDC_CMV_create
        - Src:             'src/iec61850/server/model/cdc.c:1020,5'
          Dst:             CDC_CMV_create
        - Src:             'src/iec61850/server/model/cdc.c:1021,5'
          Dst:             CDC_CMV_create
        - Src:             'src/iec61850/server/model/cdc.c:1022,5'
          Dst:             CDC_CMV_create
        - Src:             'src/iec61850/server/model/cdc.c:1025,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1027,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_ACT_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 986
      functionLinenumberEnd: 1007
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          103
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - CDC_addStandardOptions
        - CDC_addTimeQuality
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:987,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:989,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:992,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:995,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:998,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1001,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:1003,5'
          Dst:             CDC_addTimeQuality
        - Src:             'src/iec61850/server/model/cdc.c:1005,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_ACD_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 951
      functionLinenumberEnd: 981
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          113
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - CDC_addStandardOptions
        - CDC_addTimeQuality
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:952,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:954,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:955,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:958,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:959,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:963,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:964,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:968,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:969,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:973,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:974,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:977,5'
          Dst:             CDC_addTimeQuality
        - Src:             'src/iec61850/server/model/cdc.c:979,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_DPL_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 923
      functionLinenumberEnd: 945
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          116
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - CDC_addStandardOptions
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:924,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:926,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:929,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:932,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:935,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:938,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:941,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:943,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_LPL_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 901
      functionLinenumberEnd: 918
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          88
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - CDC_addStandardOptions
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:902,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:904,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:905,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:908,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:911,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:914,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:916,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_BAC_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 857
      functionLinenumberEnd: 896
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          167
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - CAC_AnalogueValue_create
        - CDC_addStandardOptions
        - CDC_addTimeQuality
        - DataAttribute_create
        - DataObject_create
        - addAnalogControls
        - addControlStatusAttributesForAnalogControl
        - addControls
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:858,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:860,5'
          Dst:             addControlStatusAttributesForAnalogControl
        - Src:             'src/iec61850/server/model/cdc.c:862,5'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:864,5'
          Dst:             CDC_addTimeQuality
        - Src:             'src/iec61850/server/model/cdc.c:867,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:869,5'
          Dst:             addControls
        - Src:             'src/iec61850/server/model/cdc.c:872,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:873,9'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:874,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:875,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:879,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:881,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:883,5'
          Dst:             addAnalogControls
        - Src:             'src/iec61850/server/model/cdc.c:886,9'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:889,9'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:892,9'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:894,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_ISC_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 823
      functionLinenumberEnd: 852
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          136
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - CAC_ValWithTrans_create
        - CDC_addOptionPicsSubstValWithTrans
        - CDC_addStandardOptions
        - CDC_addTimeQuality
        - DataAttribute_create
        - DataObject_create
        - addCommonControlAttributes
        - addControls
        - addOriginatorAndCtlNumOptions
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:824,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:826,5'
          Dst:             addOriginatorAndCtlNumOptions
        - Src:             'src/iec61850/server/model/cdc.c:828,5'
          Dst:             CAC_ValWithTrans_create
        - Src:             'src/iec61850/server/model/cdc.c:829,5'
          Dst:             CDC_addTimeQuality
        - Src:             'src/iec61850/server/model/cdc.c:831,5'
          Dst:             addControls
        - Src:             'src/iec61850/server/model/cdc.c:834,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:836,5'
          Dst:             addCommonControlAttributes
        - Src:             'src/iec61850/server/model/cdc.c:839,9'
          Dst:             CDC_addOptionPicsSubstValWithTrans
        - Src:             'src/iec61850/server/model/cdc.c:842,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:845,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:848,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:850,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CAC_ValWithTrans_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - char
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - DataAttribute_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:51,77'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:53,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:56,9'
          Dst:             DataAttribute_create
    - functionName:    CDC_addOptionPicsSubstValWithTrans
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - CAC_ValWithTrans_create
        - DataAttribute_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:223,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:225,5'
          Dst:             CAC_ValWithTrans_create
        - Src:             'src/iec61850/server/model/cdc.c:227,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:228,5'
          Dst:             DataAttribute_create
    - functionName:    CDC_BSC_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 793
      functionLinenumberEnd: 818
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          108
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - CAC_ValWithTrans_create
        - CDC_addOptionPicsSubstValWithTrans
        - CDC_addStandardOptions
        - CDC_addTimeQuality
        - DataAttribute_create
        - DataObject_create
        - addCommonControlAttributes
        - addControls
        - addOriginatorAndCtlNumOptions
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:794,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:796,5'
          Dst:             addOriginatorAndCtlNumOptions
        - Src:             'src/iec61850/server/model/cdc.c:798,5'
          Dst:             CAC_ValWithTrans_create
        - Src:             'src/iec61850/server/model/cdc.c:799,5'
          Dst:             CDC_addTimeQuality
        - Src:             'src/iec61850/server/model/cdc.c:801,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:803,5'
          Dst:             addControls
        - Src:             'src/iec61850/server/model/cdc.c:806,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:808,5'
          Dst:             addCommonControlAttributes
        - Src:             'src/iec61850/server/model/cdc.c:811,9'
          Dst:             CDC_addOptionPicsSubstValWithTrans
        - Src:             'src/iec61850/server/model/cdc.c:814,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:816,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_ENC_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 766
      functionLinenumberEnd: 788
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          97
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - CDC_addOptionPicsSubst
        - CDC_addStandardOptions
        - CDC_addStatusToDataObject
        - DataAttribute_create
        - DataObject_create
        - addCommonControlAttributes
        - addControls
        - addOriginatorAndCtlNumOptions
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:767,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:769,5'
          Dst:             addOriginatorAndCtlNumOptions
        - Src:             'src/iec61850/server/model/cdc.c:771,5'
          Dst:             CDC_addStatusToDataObject
        - Src:             'src/iec61850/server/model/cdc.c:773,5'
          Dst:             addControls
        - Src:             'src/iec61850/server/model/cdc.c:776,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:778,5'
          Dst:             addCommonControlAttributes
        - Src:             'src/iec61850/server/model/cdc.c:781,9'
          Dst:             CDC_addOptionPicsSubst
        - Src:             'src/iec61850/server/model/cdc.c:784,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:786,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_DPC_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 615
      functionLinenumberEnd: 637
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          97
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - CDC_addOptionPicsSubst
        - CDC_addStandardOptions
        - CDC_addStatusToDataObject
        - DataAttribute_create
        - DataObject_create
        - addCommonControlAttributes
        - addControls
        - addOriginatorAndCtlNumOptions
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:616,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:618,5'
          Dst:             addOriginatorAndCtlNumOptions
        - Src:             'src/iec61850/server/model/cdc.c:620,5'
          Dst:             CDC_addStatusToDataObject
        - Src:             'src/iec61850/server/model/cdc.c:622,5'
          Dst:             addControls
        - Src:             'src/iec61850/server/model/cdc.c:625,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:627,5'
          Dst:             addCommonControlAttributes
        - Src:             'src/iec61850/server/model/cdc.c:630,9'
          Dst:             CDC_addOptionPicsSubst
        - Src:             'src/iec61850/server/model/cdc.c:633,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:635,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_HST_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 493
      functionLinenumberEnd: 510
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - CAC_Unit_create
        - CDC_addStandardOptions
        - CDC_addTimeQuality
        - DataAttribute_create
        - DataObject_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:494,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:496,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:498,5'
          Dst:             CDC_addTimeQuality
        - Src:             'src/iec61850/server/model/cdc.c:500,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:504,5'
          Dst:             CAC_Unit_create
        - Src:             'src/iec61850/server/model/cdc.c:506,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:508,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_SAV_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 488
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          116
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - CAC_AnalogueValue_create
        - CAC_ScaledValueConfig_create
        - CAC_Unit_create
        - CDC_addStandardOptions
        - CDC_addTimeQuality
        - DataObject_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:468,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:470,5'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:472,5'
          Dst:             CDC_addTimeQuality
        - Src:             'src/iec61850/server/model/cdc.c:475,9'
          Dst:             CAC_Unit_create
        - Src:             'src/iec61850/server/model/cdc.c:478,9'
          Dst:             CAC_ScaledValueConfig_create
        - Src:             'src/iec61850/server/model/cdc.c:481,9'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:484,9'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:486,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_MV_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          80
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - CAC_AnalogueValue_create
        - CDC_addStandardOptions
        - CDC_addTimeQuality
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:406,74'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:409,9'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:411,5'
          Dst:             CAC_AnalogueValue_create
        - Src:             'src/iec61850/server/model/cdc.c:414,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:416,5'
          Dst:             CDC_addTimeQuality
        - Src:             'src/iec61850/server/model/cdc.c:423,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_VSS_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          71
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - CDC_addOptionPicsSubst
        - CDC_addStandardOptions
        - CDC_addStatusToDataObject
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:383,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:385,5'
          Dst:             CDC_addStatusToDataObject
        - Src:             'src/iec61850/server/model/cdc.c:388,9'
          Dst:             CDC_addOptionPicsSubst
        - Src:             'src/iec61850/server/model/cdc.c:391,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:393,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_SEC_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 376
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - CDC_addStandardOptions
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:362,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:364,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:365,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:366,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:369,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:372,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:374,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_BCR_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          98
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - CDC_addStandardOptions
        - CDC_addTimeQuality
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:331,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:333,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:336,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:337,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:340,5'
          Dst:             CDC_addTimeQuality
        - Src:             'src/iec61850/server/model/cdc.c:343,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:345,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:348,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:349,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:350,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:351,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:354,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_ENS_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 325
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          71
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - CDC_addOptionPicsSubst
        - CDC_addStandardOptions
        - CDC_addStatusToDataObject
        - DataAttribute_create
        - DataObject_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:313,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:315,5'
          Dst:             CDC_addStatusToDataObject
        - Src:             'src/iec61850/server/model/cdc.c:318,9'
          Dst:             CDC_addOptionPicsSubst
        - Src:             'src/iec61850/server/model/cdc.c:321,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:323,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_DPS_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          71
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - CDC_addOptionPicsSubst
        - CDC_addStandardOptions
        - CDC_addStatusToDataObject
        - DataAttribute_create
        - DataObject_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:276,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:278,5'
          Dst:             CDC_addStatusToDataObject
        - Src:             'src/iec61850/server/model/cdc.c:281,9'
          Dst:             CDC_addOptionPicsSubst
        - Src:             'src/iec61850/server/model/cdc.c:284,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:286,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CDC_SPS_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          71
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - CDC_addOptionPicsSubst
        - CDC_addStandardOptions
        - CDC_addStatusToDataObject
        - DataAttribute_create
        - DataObject_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:258,75'
          Dst:             DataObject_create
        - Src:             'src/iec61850/server/model/cdc.c:260,5'
          Dst:             CDC_addStatusToDataObject
        - Src:             'src/iec61850/server/model/cdc.c:263,9'
          Dst:             CDC_addOptionPicsSubst
        - Src:             'src/iec61850/server/model/cdc.c:266,9'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:268,5'
          Dst:             CDC_addStandardOptions
    - functionName:    CAC_Point_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/model/cdc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - char
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - DataAttribute_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/model/cdc.c:80,70'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:82,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:83,5'
          Dst:             DataAttribute_create
        - Src:             'src/iec61850/server/model/cdc.c:86,9'
          Dst:             DataAttribute_create
    - functionName:    setStSeld
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 496
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:484,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/control.c:493,9'
          Dst:             Semaphore_post
    - functionName:    getCancelParameterTime
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          90
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - MmsValue_getArraySize
        - MmsValue_getElement
        - MmsValue_getType
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:198,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/control.c:200,13'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:201,29'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:202,18'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:203,29'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:207,14'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/control.c:207,67'
          Dst:             MmsValue_getType
    - functionName:    getCancelParameterTest
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          55
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsValue_getArraySize
        - MmsValue_getElement
        - MmsValue_getType
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:161,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/control.c:163,13'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:164,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:165,18'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:166,20'
          Dst:             MmsValue_getElement
    - functionName:    copyControlValuesToTrackingObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         71
      ICount:          418
      EdgeCount:       89
      CyclomaticComplexity: 20
      functionsReached:
        - MmsValue_setUtcTimeMsEx
        - MmsValue_update
        - getCancelParameterTest
        - getCancelParameterTime
        - getOperParameterCheck
        - getOperParameterTest
        - getOperParameterTime
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/iec61850/server/mms_mapping/control.c:222,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:258,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:261,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:264,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:267,17'
          Dst:             MmsValue_setUtcTimeMsEx
        - Src:             'src/iec61850/server/mms_mapping/control.c:270,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:290,66'
          Dst:             getCancelParameterTest
        - Src:             'src/iec61850/server/mms_mapping/control.c:290,25'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:294,63'
          Dst:             getCancelParameterTime
        - Src:             'src/iec61850/server/mms_mapping/control.c:294,25'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:302,62'
          Dst:             getOperParameterTest
        - Src:             'src/iec61850/server/mms_mapping/control.c:302,21'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:306,63'
          Dst:             getOperParameterCheck
        - Src:             'src/iec61850/server/mms_mapping/control.c:306,21'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:310,59'
          Dst:             getOperParameterTime
        - Src:             'src/iec61850/server/mms_mapping/control.c:310,21'
          Dst:             MmsValue_update
    - functionName:    getOperParameterTest
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          55
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsValue_getArraySize
        - MmsValue_getElement
        - MmsValue_getType
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:119,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/control.c:121,13'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:122,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:123,18'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:124,20'
          Dst:             MmsValue_getElement
    - functionName:    getOperParameterCheck
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          55
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsValue_getArraySize
        - MmsValue_getElement
        - MmsValue_getType
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:133,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/control.c:135,13'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:136,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:137,18'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:138,20'
          Dst:             MmsValue_getElement
    - functionName:    getOperParameterTime
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          90
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - MmsValue_getArraySize
        - MmsValue_getElement
        - MmsValue_getType
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:178,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/control.c:180,13'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:181,29'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:182,18'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:183,29'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:187,14'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/control.c:187,67'
          Dst:             MmsValue_getType
    - functionName:    operateControl
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 715
      functionLinenumberEnd: 725
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setOpOk
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 610
      functionLinenumberEnd: 635
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          96
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsValue_setUtcTimeMsEx
        - Semaphore_post
        - Semaphore_wait
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:614,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/control.c:623,17'
          Dst:             MmsValue_setUtcTimeMsEx
        - Src:             'src/iec61850/server/mms_mapping/control.c:632,9'
          Dst:             Semaphore_post
    - functionName:    exitControlTask
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 679
      functionLinenumberEnd: 688
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - private_ClientConnection_decreaseTasksCount
        - private_IedServer_getClientConnectionByHandle
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:681,13'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/control.c:687,5'
          Dst:             private_ClientConnection_decreaseTasksCount
    - functionName:    isSboClassOperateOnce
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 639
      functionLinenumberEnd: 649
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          42
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_toInt32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:642,13'
          Dst:             MmsValue_toInt32
    - functionName:    ControlAction_getT
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2711
      functionLinenumberEnd: 2714
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlAction_getControlTime
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2703
      functionLinenumberEnd: 2706
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlAction_getControlObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2695
      functionLinenumberEnd: 2698
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlAction_getClientConnection
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2687
      functionLinenumberEnd: 2690
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - private_IedServer_getClientConnectionByHandle
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:2690,12'
          Dst:             private_IedServer_getClientConnectionByHandle
    - functionName:    ControlAction_isSelect
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2676
      functionLinenumberEnd: 2683
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlAction_getInterlockCheck
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2668
      functionLinenumberEnd: 2671
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlAction_getSynchroCheck
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2660
      functionLinenumberEnd: 2663
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlAction_getCtlNum
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2648
      functionLinenumberEnd: 2656
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_toInt32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:2652,16'
          Dst:             MmsValue_toInt32
    - functionName:    ControlAction_getOrIdent
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2627
      functionLinenumberEnd: 2644
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          66
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsValue_getElement
        - MmsValue_getOctetStringBuffer
        - MmsValue_getOctetStringSize
        - MmsValue_getType
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:2632,29'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:2636,17'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/control.c:2637,33'
          Dst:             MmsValue_getOctetStringSize
        - Src:             'src/iec61850/server/mms_mapping/control.c:2638,24'
          Dst:             MmsValue_getOctetStringBuffer
    - functionName:    ControlAction_getOrCat
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2610
      functionLinenumberEnd: 2623
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_getElement
        - MmsValue_toInt32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:2615,27'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:2618,20'
          Dst:             MmsValue_toInt32
    - functionName:    ControlAction_setAddCause
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2602
      functionLinenumberEnd: 2606
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlAction_setError
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2594
      functionLinenumberEnd: 2598
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getCancelParameterOrigin
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          55
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsValue_getArraySize
        - MmsValue_getElement
        - MmsValue_getType
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:105,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/control.c:107,13'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:108,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:109,18'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:110,20'
          Dst:             MmsValue_getElement
    - functionName:    getCancelParameterCtlNum
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          55
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsValue_getArraySize
        - MmsValue_getElement
        - MmsValue_getType
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:91,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/control.c:93,13'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:94,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:95,18'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:96,20'
          Dst:             MmsValue_getElement
    - functionName:    initiateControlTask
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 675
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - private_ClientConnection_increaseTasksCount
        - private_IedServer_getClientConnectionByHandle
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:667,13'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/control.c:672,5'
          Dst:             private_ClientConnection_increaseTasksCount
    - functionName:    getOperParameterOperTime
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 653
      functionLinenumberEnd: 661
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          42
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_getArraySize
        - MmsValue_getElement
        - MmsValue_getType
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:654,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/control.c:656,13'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:657,20'
          Dst:             MmsValue_getElement
    - functionName:    unselectObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 540
      functionLinenumberEnd: 561
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - getState
        - setStSeld
        - setState
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:541,9'
          Dst:             getState
        - Src:             'src/iec61850/server/mms_mapping/control.c:543,9'
          Dst:             setState
        - Src:             'src/iec61850/server/mms_mapping/control.c:545,9'
          Dst:             setStSeld
    - functionName:    getState
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 475
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:466,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/control.c:472,5'
          Dst:             Semaphore_post
    - functionName:    setState
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 458
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:450,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/control.c:456,5'
          Dst:             Semaphore_post
    - functionName:    updateNextControlTimeout
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 434
      functionLinenumberEnd: 437
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    updateControlParameters
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1805
      functionLinenumberEnd: 1817
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          98
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_update
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:1806,5'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:1807,5'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:1808,5'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:1813,9'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:1816,9'
          Dst:             MmsValue_update
    - functionName:    checkValidityOfOriginParameter
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2003
      functionLinenumberEnd: 2029
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          101
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - MmsValue_getArraySize
        - MmsValue_getElement
        - MmsValue_getOctetStringSize
        - MmsValue_getType
        - MmsValue_toInt32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:2004,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/control.c:2007,9'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:2010,25'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:2012,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/control.c:2015,9'
          Dst:             MmsValue_getOctetStringSize
        - Src:             'src/iec61850/server/mms_mapping/control.c:2018,23'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:2020,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/control.c:2023,25'
          Dst:             MmsValue_toInt32
    - functionName:    getOperParameterOrigin
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          55
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsValue_getArraySize
        - MmsValue_getElement
        - MmsValue_getType
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:147,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/control.c:149,13'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:150,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:151,18'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:152,20'
          Dst:             MmsValue_getElement
    - functionName:    getOperParameterCtlNum
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          55
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - MmsValue_getArraySize
        - MmsValue_getElement
        - MmsValue_getType
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:77,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/control.c:79,13'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:80,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:81,18'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:82,20'
          Dst:             MmsValue_getElement
    - functionName:    getCtlVal
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1624
      functionLinenumberEnd: 1634
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          42
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_getArraySize
        - MmsValue_getElement
        - MmsValue_getType
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:1625,9'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/control.c:1627,13'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/control.c:1629,20'
          Dst:             MmsValue_getElement
    - functionName:    Control_writeAccessControlObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2034
      functionLinenumberEnd: 2589
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         195
      ICount:          1351
      EdgeCount:       267
      CyclomaticComplexity: 74
      functionsReached:
        - ControlObject_sendLastApplError
        - Control_lookupControlObject
        - Hal_getMonotonicTimeInMs
        - Hal_getTimeInMs
        - MmsMapping_getNextNameElement
        - MmsServerConnection_getLastInvokeId
        - MmsValue_equals
        - MmsValue_getBitStringBit
        - MmsValue_getBoolean
        - MmsValue_getUtcTimeInMs
        - MmsValue_update
        - StringUtils_copyStringMax
        - Timestamp_fromMmsValue
        - abortControlOperation
        - checkSelectTimeout
        - checkValidityOfOriginParameter
        - doesElementEquals
        - getCancelParameterCtlNum
        - getCancelParameterOrigin
        - getCtlVal
        - getOperParameterCheck
        - getOperParameterCtlNum
        - getOperParameterOperTime
        - getOperParameterOrigin
        - getOperParameterTest
        - getOperParameterTime
        - getState
        - initiateControlTask
        - private_IedServer_convertMmsDataAccessErrorToServiceError
        - resetAddCause
        - selectObject
        - setOpRcvd
        - setState
        - strchr
        - strcmp
        - unselectObject
        - updateControlParameters
        - updateGenericTrackingObjectValues
        - updateNextControlTimeout
        - updateNextRealTimeControlTimeout
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:2046,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/control.c:2048,23'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/control.c:2060,24'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:2065,22'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:2075,17'
          Dst:             doesElementEquals
        - Src:             'src/iec61850/server/mms_mapping/control.c:2076,17'
          Dst:             doesElementEquals
        - Src:             'src/iec61850/server/mms_mapping/control.c:2077,17'
          Dst:             doesElementEquals
        - Src:             'src/iec61850/server/mms_mapping/control.c:2078,17'
          Dst:             doesElementEquals
        - Src:             'src/iec61850/server/mms_mapping/control.c:2085,28'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:2105,21'
          Dst:             Control_lookupControlObject
        - Src:             'src/iec61850/server/mms_mapping/control.c:2119,9'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/control.c:2127,21'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:2134,32'
          Dst:             getCtlVal
        - Src:             'src/iec61850/server/mms_mapping/control.c:2138,36'
          Dst:             getOperParameterCtlNum
        - Src:             'src/iec61850/server/mms_mapping/control.c:2139,36'
          Dst:             getOperParameterOrigin
        - Src:             'src/iec61850/server/mms_mapping/control.c:2140,35'
          Dst:             getOperParameterCheck
        - Src:             'src/iec61850/server/mms_mapping/control.c:2141,34'
          Dst:             getOperParameterTest
        - Src:             'src/iec61850/server/mms_mapping/control.c:2142,31'
          Dst:             getOperParameterTime
        - Src:             'src/iec61850/server/mms_mapping/control.c:2144,21'
          Dst:             checkValidityOfOriginParameter
        - Src:             'src/iec61850/server/mms_mapping/control.c:2148,21'
          Dst:             ControlObject_sendLastApplError
        - Src:             'src/iec61850/server/mms_mapping/control.c:2159,21'
          Dst:             Timestamp_fromMmsValue
        - Src:             'src/iec61850/server/mms_mapping/control.c:2162,29'
          Dst:             getState
        - Src:             'src/iec61850/server/mms_mapping/control.c:2164,49'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/control.c:2166,17'
          Dst:             checkSelectTimeout
        - Src:             'src/iec61850/server/mms_mapping/control.c:2174,25'
          Dst:             ControlObject_sendLastApplError
        - Src:             'src/iec61850/server/mms_mapping/control.c:2187,25'
          Dst:             ControlObject_sendLastApplError
        - Src:             'src/iec61850/server/mms_mapping/control.c:2202,43'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/control.c:2203,41'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/control.c:2204,42'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/server/mms_mapping/control.c:2208,21'
          Dst:             updateControlParameters
        - Src:             'src/iec61850/server/mms_mapping/control.c:2228,25'
          Dst:             selectObject
        - Src:             'src/iec61850/server/mms_mapping/control.c:2238,58'
          Dst:             MmsServerConnection_getLastInvokeId
        - Src:             'src/iec61850/server/mms_mapping/control.c:2240,25'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:2241,25'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:2242,25'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:2244,25'
          Dst:             setState
        - Src:             'src/iec61850/server/mms_mapping/control.c:2246,56'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/control.c:2246,25'
          Dst:             updateNextControlTimeout
        - Src:             'src/iec61850/server/mms_mapping/control.c:2254,25'
          Dst:             ControlObject_sendLastApplError
        - Src:             'src/iec61850/server/mms_mapping/control.c:2275,14'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/control.c:2279,28'
          Dst:             getCtlVal
        - Src:             'src/iec61850/server/mms_mapping/control.c:2280,26'
          Dst:             getOperParameterTest
        - Src:             'src/iec61850/server/mms_mapping/control.c:2281,28'
          Dst:             getOperParameterCtlNum
        - Src:             'src/iec61850/server/mms_mapping/control.c:2282,28'
          Dst:             getOperParameterOrigin
        - Src:             'src/iec61850/server/mms_mapping/control.c:2283,27'
          Dst:             getOperParameterCheck
        - Src:             'src/iec61850/server/mms_mapping/control.c:2284,35'
          Dst:             getOperParameterTime
        - Src:             'src/iec61850/server/mms_mapping/control.c:2293,9'
          Dst:             Timestamp_fromMmsValue
        - Src:             'src/iec61850/server/mms_mapping/control.c:2295,13'
          Dst:             checkValidityOfOriginParameter
        - Src:             'src/iec61850/server/mms_mapping/control.c:2299,13'
          Dst:             ControlObject_sendLastApplError
        - Src:             'src/iec61850/server/mms_mapping/control.c:2305,17'
          Dst:             unselectObject
        - Src:             'src/iec61850/server/mms_mapping/control.c:2311,43'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/control.c:2311,9'
          Dst:             checkSelectTimeout
        - Src:             'src/iec61850/server/mms_mapping/control.c:2313,21'
          Dst:             getState
        - Src:             'src/iec61850/server/mms_mapping/control.c:2319,13'
          Dst:             ControlObject_sendLastApplError
        - Src:             'src/iec61850/server/mms_mapping/control.c:2327,35'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/control.c:2328,33'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/control.c:2330,34'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/server/mms_mapping/control.c:2340,21'
          Dst:             ControlObject_sendLastApplError
        - Src:             'src/iec61850/server/mms_mapping/control.c:2348,26'
          Dst:             MmsValue_equals
        - Src:             'src/iec61850/server/mms_mapping/control.c:2349,26'
          Dst:             MmsValue_equals
        - Src:             'src/iec61850/server/mms_mapping/control.c:2350,26'
          Dst:             MmsValue_equals
        - Src:             'src/iec61850/server/mms_mapping/control.c:2358,25'
          Dst:             ControlObject_sendLastApplError
        - Src:             'src/iec61850/server/mms_mapping/control.c:2362,25'
          Dst:             unselectObject
        - Src:             'src/iec61850/server/mms_mapping/control.c:2371,13'
          Dst:             updateControlParameters
        - Src:             'src/iec61850/server/mms_mapping/control.c:2373,32'
          Dst:             getOperParameterOperTime
        - Src:             'src/iec61850/server/mms_mapping/control.c:2377,46'
          Dst:             MmsValue_getUtcTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/control.c:2379,50'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/control.c:2397,25'
          Dst:             initiateControlTask
        - Src:             'src/iec61850/server/mms_mapping/control.c:2399,25'
          Dst:             setState
        - Src:             'src/iec61850/server/mms_mapping/control.c:2401,25'
          Dst:             updateNextRealTimeControlTimeout
        - Src:             'src/iec61850/server/mms_mapping/control.c:2419,13'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:2426,17'
          Dst:             setOpRcvd
        - Src:             'src/iec61850/server/mms_mapping/control.c:2446,54'
          Dst:             MmsServerConnection_getLastInvokeId
        - Src:             'src/iec61850/server/mms_mapping/control.c:2448,21'
          Dst:             setState
        - Src:             'src/iec61850/server/mms_mapping/control.c:2451,21'
          Dst:             setOpRcvd
        - Src:             'src/iec61850/server/mms_mapping/control.c:2453,21'
          Dst:             initiateControlTask
        - Src:             'src/iec61850/server/mms_mapping/control.c:2455,52'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/control.c:2455,21'
          Dst:             updateNextControlTimeout
        - Src:             'src/iec61850/server/mms_mapping/control.c:2462,21'
          Dst:             setOpRcvd
        - Src:             'src/iec61850/server/mms_mapping/control.c:2464,21'
          Dst:             abortControlOperation
        - Src:             'src/iec61850/server/mms_mapping/control.c:2466,21'
          Dst:             ControlObject_sendLastApplError
        - Src:             'src/iec61850/server/mms_mapping/control.c:2479,13'
          Dst:             ControlObject_sendLastApplError
        - Src:             'src/iec61850/server/mms_mapping/control.c:2494,13'
          Dst:             ControlObject_sendLastApplError
        - Src:             'src/iec61850/server/mms_mapping/control.c:2501,14'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/control.c:2505,21'
          Dst:             getState
        - Src:             'src/iec61850/server/mms_mapping/control.c:2510,28'
          Dst:             getCancelParameterCtlNum
        - Src:             'src/iec61850/server/mms_mapping/control.c:2511,28'
          Dst:             getCancelParameterOrigin
        - Src:             'src/iec61850/server/mms_mapping/control.c:2525,13'
          Dst:             ControlObject_sendLastApplError
        - Src:             'src/iec61850/server/mms_mapping/control.c:2539,21'
          Dst:             unselectObject
        - Src:             'src/iec61850/server/mms_mapping/control.c:2545,21'
          Dst:             ControlObject_sendLastApplError
        - Src:             'src/iec61850/server/mms_mapping/control.c:2559,13'
          Dst:             abortControlOperation
        - Src:             'src/iec61850/server/mms_mapping/control.c:2577,25'
          Dst:             private_IedServer_convertMmsDataAccessErrorToServiceError
        - Src:             'src/iec61850/server/mms_mapping/control.c:2576,17'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/control.c:2582,13'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/control.c:2587,5'
          Dst:             resetAddCause
    - functionName:    doesElementEquals
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1821
      functionLinenumberEnd: 1839
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          95
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Control_lookupControlObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1598
      functionLinenumberEnd: 1620
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          83
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ControlObject_getDomain
        - ControlObject_getLNName
        - ControlObject_getName
        - LinkedList_getNext
        - strcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:1599,26'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/control.c:1605,13'
          Dst:             ControlObject_getDomain
        - Src:             'src/iec61850/server/mms_mapping/control.c:1607,24'
          Dst:             ControlObject_getLNName
        - Src:             'src/iec61850/server/mms_mapping/control.c:1607,17'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/control.c:1609,28'
          Dst:             ControlObject_getName
        - Src:             'src/iec61850/server/mms_mapping/control.c:1609,21'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/control.c:1616,19'
          Dst:             LinkedList_getNext
    - functionName:    ControlObject_sendLastApplError
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1757
      functionLinenumberEnd: 1801
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          116
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsDomain_getName
        - MmsServerConnection_sendInformationReportSingleVariableVMDSpecific
        - MmsValue_setElement
        - MmsValue_setInt32
        - StringUtils_createStringInBuffer
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:1770,54'
          Dst:             MmsDomain_getName
        - Src:             'src/iec61850/server/mms_mapping/control.c:1770,5'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1787,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:1789,5'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/mms_mapping/control.c:1790,5'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/mms_mapping/control.c:1792,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:1793,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:1794,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:1795,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:1797,5'
          Dst:             MmsServerConnection_sendInformationReportSingleVariableVMDSpecific
    - functionName:    checkSelectTimeout
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 565
      functionLinenumberEnd: 586
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          100
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - getState
        - unselectObject
        - updateNextControlTimeout
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:568,13'
          Dst:             getState
        - Src:             'src/iec61850/server/mms_mapping/control.c:578,21'
          Dst:             unselectObject
        - Src:             'src/iec61850/server/mms_mapping/control.c:581,21'
          Dst:             updateNextControlTimeout
    - functionName:    selectObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 516
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - setStSeld
        - setState
        - updateNextControlTimeout
        - updateSboTimeoutValue
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:520,5'
          Dst:             updateSboTimeoutValue
        - Src:             'src/iec61850/server/mms_mapping/control.c:524,5'
          Dst:             setStSeld
        - Src:             'src/iec61850/server/mms_mapping/control.c:525,5'
          Dst:             setState
        - Src:             'src/iec61850/server/mms_mapping/control.c:527,5'
          Dst:             updateNextControlTimeout
    - functionName:    updateNextRealTimeControlTimeout
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 441
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setOpRcvd
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 590
      functionLinenumberEnd: 606
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:594,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/control.c:603,9'
          Dst:             Semaphore_post
    - functionName:    abortControlOperation
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 692
      functionLinenumberEnd: 711
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          82
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - exitControlTask
        - isSboClassOperateOnce
        - setState
        - unselectObject
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:697,13'
          Dst:             unselectObject
        - Src:             'src/iec61850/server/mms_mapping/control.c:701,17'
          Dst:             isSboClassOperateOnce
        - Src:             'src/iec61850/server/mms_mapping/control.c:702,17'
          Dst:             unselectObject
        - Src:             'src/iec61850/server/mms_mapping/control.c:704,17'
          Dst:             setState
        - Src:             'src/iec61850/server/mms_mapping/control.c:708,9'
          Dst:             setState
        - Src:             'src/iec61850/server/mms_mapping/control.c:710,5'
          Dst:             exitControlTask
    - functionName:    updateGenericTrackingObjectValues
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          231
      EdgeCount:       37
      CyclomaticComplexity: 7
      functionsReached:
        - Hal_getTimeInMs
        - IedServer_updateVisibleStringAttributeValue
        - MmsValue_setInt32
        - MmsValue_setUtcTimeMsEx
        - copyControlValuesToTrackingObject
        - snprintf
      functionUses:    15
      BranchProfiles:
        - Branch String:   'src/iec61850/server/mms_mapping/control.c:366,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:360,5'
          Dst:             copyControlValuesToTrackingObject
        - Src:             'src/iec61850/server/mms_mapping/control.c:405,13'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/mms_mapping/control.c:408,59'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/control.c:408,13'
          Dst:             MmsValue_setUtcTimeMsEx
        - Src:             'src/iec61850/server/mms_mapping/control.c:411,13'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/mms_mapping/control.c:419,9'
          Dst:             snprintf
        - Src:             'src/iec61850/server/mms_mapping/control.c:422,13'
          Dst:             IedServer_updateVisibleStringAttributeValue
    - functionName:    resetAddCause
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 729
      functionLinenumberEnd: 736
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_setInt32
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:734,9'
          Dst:             MmsValue_setInt32
    - functionName:    updateSboTimeoutValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 500
      functionLinenumberEnd: 512
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_toInt32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:503,34'
          Dst:             MmsValue_toInt32
    - functionName:    ControlObject_getDomain
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1401
      functionLinenumberEnd: 1402
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObject_getLNName
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1395
      functionLinenumberEnd: 1396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObject_getName
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1389
      functionLinenumberEnd: 1390
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Control_readAccessControlObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1844
      functionLinenumberEnd: 1999
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         67
      ICount:          383
      EdgeCount:       89
      CyclomaticComplexity: 24
      functionsReached:
        - ControlObject_getMmsValue
        - ControlObject_getTypeSpec
        - Control_lookupControlObject
        - Hal_getMonotonicTimeInMs
        - MmsMapping_getNextNameElement
        - MmsServerConnection_getLastInvokeId
        - MmsValue_getSubElement
        - StringUtils_copyStringMax
        - checkSelectTimeout
        - convertCheckHandlerResultToServiceError
        - doesElementEquals
        - getState
        - selectObject
        - setState
        - strchr
        - strcmp
        - updateGenericTrackingObjectValues
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:1852,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/control.c:1854,23'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/control.c:1863,24'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:1868,22'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:1878,17'
          Dst:             doesElementEquals
        - Src:             'src/iec61850/server/mms_mapping/control.c:1879,17'
          Dst:             doesElementEquals
        - Src:             'src/iec61850/server/mms_mapping/control.c:1880,17'
          Dst:             doesElementEquals
        - Src:             'src/iec61850/server/mms_mapping/control.c:1881,17'
          Dst:             doesElementEquals
        - Src:             'src/iec61850/server/mms_mapping/control.c:1888,28'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:1902,36'
          Dst:             Control_lookupControlObject
        - Src:             'src/iec61850/server/mms_mapping/control.c:1908,17'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/control.c:1910,22'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/control.c:1912,22'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/control.c:1916,53'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/control.c:1922,25'
          Dst:             checkSelectTimeout
        - Src:             'src/iec61850/server/mms_mapping/control.c:1924,29'
          Dst:             getState
        - Src:             'src/iec61850/server/mms_mapping/control.c:1947,33'
          Dst:             selectObject
        - Src:             'src/iec61850/server/mms_mapping/control.c:1951,33'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/control.c:1957,66'
          Dst:             MmsServerConnection_getLastInvokeId
        - Src:             'src/iec61850/server/mms_mapping/control.c:1958,33'
          Dst:             setState
        - Src:             'src/iec61850/server/mms_mapping/control.c:1965,41'
          Dst:             convertCheckHandlerResultToServiceError
        - Src:             'src/iec61850/server/mms_mapping/control.c:1964,33'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/control.c:1980,22'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/control.c:1984,48'
          Dst:             ControlObject_getMmsValue
        - Src:             'src/iec61850/server/mms_mapping/control.c:1985,25'
          Dst:             ControlObject_getTypeSpec
        - Src:             'src/iec61850/server/mms_mapping/control.c:1984,25'
          Dst:             MmsValue_getSubElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:1989,21'
          Dst:             ControlObject_getMmsValue
    - functionName:    convertCheckHandlerResultToServiceError
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       20
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'src/iec61850/server/mms_mapping/control.c:322,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ControlObject_getMmsValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1425
      functionLinenumberEnd: 1426
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObject_getTypeSpec
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1419
      functionLinenumberEnd: 1420
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObject_sendCommandTerminationNegative
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1671
      functionLinenumberEnd: 1752
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          163
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsDomain_getName
        - MmsServerConnection_sendInformationReportListOfVariables
        - MmsValue_setElement
        - MmsValue_setInt32
        - StringUtils_createStringInBuffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:1702,54'
          Dst:             MmsDomain_getName
        - Src:             'src/iec61850/server/mms_mapping/control.c:1702,5'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1712,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:1714,5'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/mms_mapping/control.c:1715,5'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/mms_mapping/control.c:1717,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:1718,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:1719,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:1720,5'
          Dst:             MmsValue_setElement
        - Src:             'src/iec61850/server/mms_mapping/control.c:1731,5'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1733,22'
          Dst:             MmsDomain_getName
        - Src:             'src/iec61850/server/mms_mapping/control.c:1751,5'
          Dst:             MmsServerConnection_sendInformationReportListOfVariables
    - functionName:    ControlObject_sendCommandTerminationPositive
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1638
      functionLinenumberEnd: 1667
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          59
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsDomain_getName
        - MmsServerConnection_sendInformationReportListOfVariables
        - StringUtils_createStringInBuffer
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:1641,5'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1649,24'
          Dst:             MmsDomain_getName
        - Src:             'src/iec61850/server/mms_mapping/control.c:1666,5'
          Dst:             MmsServerConnection_sendInformationReportListOfVariables
    - functionName:    ControlObject_handlePendingEvents
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1288
      functionLinenumberEnd: 1347
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         42
      ICount:          310
      EdgeCount:       55
      CyclomaticComplexity: 15
      functionsReached:
        - IedServer_updateBooleanAttributeValue
        - Semaphore_post
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:1290,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/control.c:1298,17'
          Dst:             IedServer_updateBooleanAttributeValue
        - Src:             'src/iec61850/server/mms_mapping/control.c:1306,17'
          Dst:             IedServer_updateBooleanAttributeValue
        - Src:             'src/iec61850/server/mms_mapping/control.c:1314,17'
          Dst:             IedServer_updateBooleanAttributeValue
        - Src:             'src/iec61850/server/mms_mapping/control.c:1322,17'
          Dst:             IedServer_updateBooleanAttributeValue
        - Src:             'src/iec61850/server/mms_mapping/control.c:1330,17'
          Dst:             IedServer_updateBooleanAttributeValue
        - Src:             'src/iec61850/server/mms_mapping/control.c:1338,17'
          Dst:             IedServer_updateBooleanAttributeValue
        - Src:             'src/iec61850/server/mms_mapping/control.c:1345,5'
          Dst:             Semaphore_post
    - functionName:    executeControlTask
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 740
      functionLinenumberEnd: 985
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         74
      ICount:          616
      EdgeCount:       94
      CyclomaticComplexity: 22
      functionsReached:
        - ControlObject_sendCommandTerminationNegative
        - ControlObject_sendCommandTerminationPositive
        - ControlObject_sendLastApplError
        - Hal_getTimeInMs
        - LinkedList_add
        - LinkedList_create
        - LinkedList_destroyStatic
        - MmsServerConnection_sendReadResponse
        - MmsServerConnection_sendWriteResponse
        - MmsValue_setUtcTime
        - MmsValue_setUtcTimeQuality
        - MmsValue_update
        - abortControlOperation
        - convertCheckHandlerResultToServiceError
        - exitControlTask
        - getOperParameterOperTime
        - getState
        - operateControl
        - resetAddCause
        - selectObject
        - setOpOk
        - setState
        - updateGenericTrackingObjectValues
        - updateNextControlTimeout
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/iec61850/server/mms_mapping/control.c:747,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:745,13'
          Dst:             getState
        - Src:             'src/iec61850/server/mms_mapping/control.c:765,37'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/server/mms_mapping/control.c:769,21'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/server/mms_mapping/control.c:771,21'
          Dst:             selectObject
        - Src:             'src/iec61850/server/mms_mapping/control.c:774,21'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/control.c:779,21'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/server/mms_mapping/control.c:781,21'
          Dst:             setState
        - Src:             'src/iec61850/server/mms_mapping/control.c:785,29'
          Dst:             convertCheckHandlerResultToServiceError
        - Src:             'src/iec61850/server/mms_mapping/control.c:784,21'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/control.c:789,17'
          Dst:             MmsServerConnection_sendReadResponse
        - Src:             'src/iec61850/server/mms_mapping/control.c:791,17'
          Dst:             LinkedList_destroyStatic
        - Src:             'src/iec61850/server/mms_mapping/control.c:797,21'
          Dst:             selectObject
        - Src:             'src/iec61850/server/mms_mapping/control.c:800,25'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:803,25'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/control.c:805,21'
          Dst:             MmsServerConnection_sendWriteResponse
        - Src:             'src/iec61850/server/mms_mapping/control.c:808,21'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/control.c:816,21'
          Dst:             setState
        - Src:             'src/iec61850/server/mms_mapping/control.c:818,21'
          Dst:             ControlObject_sendLastApplError
        - Src:             'src/iec61850/server/mms_mapping/control.c:821,21'
          Dst:             MmsServerConnection_sendWriteResponse
        - Src:             'src/iec61850/server/mms_mapping/control.c:825,29'
          Dst:             convertCheckHandlerResultToServiceError
        - Src:             'src/iec61850/server/mms_mapping/control.c:824,21'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/control.c:828,21'
          Dst:             resetAddCause
        - Src:             'src/iec61850/server/mms_mapping/control.c:837,17'
          Dst:             setState
        - Src:             'src/iec61850/server/mms_mapping/control.c:843,13'
          Dst:             updateNextControlTimeout
        - Src:             'src/iec61850/server/mms_mapping/control.c:871,17'
          Dst:             ControlObject_sendLastApplError
        - Src:             'src/iec61850/server/mms_mapping/control.c:878,17'
          Dst:             MmsServerConnection_sendWriteResponse
        - Src:             'src/iec61850/server/mms_mapping/control.c:882,17'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/control.c:888,17'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/control.c:892,13'
          Dst:             resetAddCause
        - Src:             'src/iec61850/server/mms_mapping/control.c:894,13'
          Dst:             abortControlOperation
        - Src:             'src/iec61850/server/mms_mapping/control.c:895,13'
          Dst:             exitControlTask
        - Src:             'src/iec61850/server/mms_mapping/control.c:901,17'
          Dst:             ControlObject_sendCommandTerminationPositive
        - Src:             'src/iec61850/server/mms_mapping/control.c:904,17'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/control.c:907,36'
          Dst:             getOperParameterOperTime
        - Src:             'src/iec61850/server/mms_mapping/control.c:909,17'
          Dst:             MmsValue_setUtcTime
        - Src:             'src/iec61850/server/mms_mapping/control.c:910,17'
          Dst:             MmsValue_setUtcTimeQuality
        - Src:             'src/iec61850/server/mms_mapping/control.c:914,17'
          Dst:             MmsServerConnection_sendWriteResponse
        - Src:             'src/iec61850/server/mms_mapping/control.c:918,17'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/control.c:922,13'
          Dst:             setState
        - Src:             'src/iec61850/server/mms_mapping/control.c:924,42'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/control.c:924,13'
          Dst:             setOpOk
        - Src:             'src/iec61850/server/mms_mapping/control.c:930,13'
          Dst:             updateNextControlTimeout
        - Src:             'src/iec61850/server/mms_mapping/control.c:937,39'
          Dst:             operateControl
        - Src:             'src/iec61850/server/mms_mapping/control.c:945,21'
          Dst:             ControlObject_sendCommandTerminationPositive
        - Src:             'src/iec61850/server/mms_mapping/control.c:948,21'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/control.c:952,17'
          Dst:             abortControlOperation
        - Src:             'src/iec61850/server/mms_mapping/control.c:961,21'
          Dst:             ControlObject_sendCommandTerminationNegative
        - Src:             'src/iec61850/server/mms_mapping/control.c:965,17'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/control.c:968,17'
          Dst:             abortControlOperation
        - Src:             'src/iec61850/server/mms_mapping/control.c:971,13'
          Dst:             exitControlTask
        - Src:             'src/iec61850/server/mms_mapping/control.c:973,43'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/control.c:973,13'
          Dst:             setOpOk
        - Src:             'src/iec61850/server/mms_mapping/control.c:975,13'
          Dst:             resetAddCause
        - Src:             'src/iec61850/server/mms_mapping/control.c:979,13'
          Dst:             updateNextControlTimeout
    - functionName:    Control_processControlActions
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1490
      functionLinenumberEnd: 1594
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         44
      ICount:          322
      EdgeCount:       58
      CyclomaticComplexity: 16
      functionsReached:
        - ControlObject_handlePendingEvents
        - ControlObject_sendLastApplError
        - Hal_getTimeInMs
        - LinkedList_getNext
        - abortControlOperation
        - checkSelectTimeout
        - convertCheckHandlerResultToServiceError
        - executeControlTask
        - resetAddCause
        - setOpRcvd
        - updateGenericTrackingObjectValues
        - updateNextRealTimeControlTimeout
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:1491,36'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/control.c:1501,30'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/control.c:1513,35'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/control.c:1520,55'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/control.c:1523,25'
          Dst:             setOpRcvd
        - Src:             'src/iec61850/server/mms_mapping/control.c:1550,29'
          Dst:             setOpRcvd
        - Src:             'src/iec61850/server/mms_mapping/control.c:1552,29'
          Dst:             executeControlTask
        - Src:             'src/iec61850/server/mms_mapping/control.c:1556,29'
          Dst:             ControlObject_sendLastApplError
        - Src:             'src/iec61850/server/mms_mapping/control.c:1562,37'
          Dst:             convertCheckHandlerResultToServiceError
        - Src:             'src/iec61850/server/mms_mapping/control.c:1561,29'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/control.c:1566,29'
          Dst:             setOpRcvd
        - Src:             'src/iec61850/server/mms_mapping/control.c:1568,29'
          Dst:             abortControlOperation
        - Src:             'src/iec61850/server/mms_mapping/control.c:1570,29'
          Dst:             resetAddCause
        - Src:             'src/iec61850/server/mms_mapping/control.c:1575,25'
          Dst:             updateNextRealTimeControlTimeout
        - Src:             'src/iec61850/server/mms_mapping/control.c:1581,21'
          Dst:             executeControlTask
        - Src:             'src/iec61850/server/mms_mapping/control.c:1585,21'
          Dst:             checkSelectTimeout
        - Src:             'src/iec61850/server/mms_mapping/control.c:1589,13'
          Dst:             ControlObject_handlePendingEvents
        - Src:             'src/iec61850/server/mms_mapping/control.c:1591,23'
          Dst:             LinkedList_getNext
    - functionName:    ControlObject_updateControlModel
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1473
      functionLinenumberEnd: 1486
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          80
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - IedServer_updateInt32AttributeValue
        - ModelNode_getChild
        - setState
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:1477,9'
          Dst:             setState
        - Src:             'src/iec61850/server/mms_mapping/control.c:1479,9'
          Dst:             setState
        - Src:             'src/iec61850/server/mms_mapping/control.c:1481,48'
          Dst:             ModelNode_getChild
        - Src:             'src/iec61850/server/mms_mapping/control.c:1484,9'
          Dst:             IedServer_updateInt32AttributeValue
    - functionName:    ControlObject_installSelectStateChangedHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1466
      functionLinenumberEnd: 1469
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObject_installWaitForExecutionHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1458
      functionLinenumberEnd: 1461
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObject_installCheckHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1450
      functionLinenumberEnd: 1453
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObject_installListener
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1443
      functionLinenumberEnd: 1446
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObject_unselect
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1431
      functionLinenumberEnd: 1439
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - abortControlOperation
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:1434,9'
          Dst:             abortControlOperation
    - functionName:    ControlObject_setTypeSpec
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1413
      functionLinenumberEnd: 1415
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObject_setMmsValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1407
      functionLinenumberEnd: 1409
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ControlObject_initialize
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1055
      functionLinenumberEnd: 1284
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         128
      ICount:          963
      EdgeCount:       171
      CyclomaticComplexity: 45
      functionsReached:
        - IedModel_getModelNodeByObjectReference
        - IedServer_getMmsServer
        - MmsServer_getValueFromCache
        - MmsValue_newIntegerFromInt32
        - MmsValue_setVisibleString
        - MmsValue_toInt32
        - StringUtils_createStringInBuffer
        - setState
        - updateSboTimeoutValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:1056,27'
          Dst:             IedServer_getMmsServer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1066,26'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1071,26'
          Dst:             MmsServer_getValueFromCache
        - Src:             'src/iec61850/server/mms_mapping/control.c:1080,26'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1082,22'
          Dst:             MmsServer_getValueFromCache
        - Src:             'src/iec61850/server/mms_mapping/control.c:1084,24'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1086,22'
          Dst:             MmsServer_getValueFromCache
        - Src:             'src/iec61850/server/mms_mapping/control.c:1091,22'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1093,26'
          Dst:             MmsServer_getValueFromCache
        - Src:             'src/iec61850/server/mms_mapping/control.c:1096,24'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1098,22'
          Dst:             MmsServer_getValueFromCache
        - Src:             'src/iec61850/server/mms_mapping/control.c:1103,22'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1105,26'
          Dst:             MmsServer_getValueFromCache
        - Src:             'src/iec61850/server/mms_mapping/control.c:1108,28'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1110,24'
          Dst:             MmsServer_getValueFromCache
        - Src:             'src/iec61850/server/mms_mapping/control.c:1113,5'
          Dst:             updateSboTimeoutValue
        - Src:             'src/iec61850/server/mms_mapping/control.c:1117,40'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1120,9'
          Dst:             MmsValue_setVisibleString
        - Src:             'src/iec61850/server/mms_mapping/control.c:1134,14'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1135,27'
          Dst:             IedModel_getModelNodeByObjectReference
        - Src:             'src/iec61850/server/mms_mapping/control.c:1141,14'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1142,27'
          Dst:             IedModel_getModelNodeByObjectReference
        - Src:             'src/iec61850/server/mms_mapping/control.c:1148,14'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1149,27'
          Dst:             IedModel_getModelNodeByObjectReference
        - Src:             'src/iec61850/server/mms_mapping/control.c:1155,14'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1156,27'
          Dst:             IedModel_getModelNodeByObjectReference
        - Src:             'src/iec61850/server/mms_mapping/control.c:1162,14'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1163,27'
          Dst:             IedModel_getModelNodeByObjectReference
        - Src:             'src/iec61850/server/mms_mapping/control.c:1213,24'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1215,37'
          Dst:             IedModel_getModelNodeByObjectReference
        - Src:             'src/iec61850/server/mms_mapping/control.c:1225,24'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1227,37'
          Dst:             IedModel_getModelNodeByObjectReference
        - Src:             'src/iec61850/server/mms_mapping/control.c:1237,22'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1239,35'
          Dst:             IedModel_getModelNodeByObjectReference
        - Src:             'src/iec61850/server/mms_mapping/control.c:1249,23'
          Dst:             StringUtils_createStringInBuffer
        - Src:             'src/iec61850/server/mms_mapping/control.c:1251,36'
          Dst:             IedModel_getModelNodeByObjectReference
        - Src:             'src/iec61850/server/mms_mapping/control.c:1261,19'
          Dst:             MmsValue_newIntegerFromInt32
        - Src:             'src/iec61850/server/mms_mapping/control.c:1262,22'
          Dst:             MmsValue_newIntegerFromInt32
        - Src:             'src/iec61850/server/mms_mapping/control.c:1266,27'
          Dst:             MmsValue_toInt32
        - Src:             'src/iec61850/server/mms_mapping/control.c:1280,13'
          Dst:             setState
        - Src:             'src/iec61850/server/mms_mapping/control.c:1282,13'
          Dst:             setState
    - functionName:    ControlObject_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1351
      functionLinenumberEnd: 1385
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         33
      ICount:          176
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - Memory_free
        - MmsValue_delete
        - Semaphore_destroy
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:1355,13'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/server/mms_mapping/control.c:1358,13'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/server/mms_mapping/control.c:1361,13'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/server/mms_mapping/control.c:1364,13'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/server/mms_mapping/control.c:1367,13'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/server/mms_mapping/control.c:1370,13'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/server/mms_mapping/control.c:1373,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/control.c:1377,13'
          Dst:             Semaphore_destroy
        - Src:             'src/iec61850/server/mms_mapping/control.c:1380,13'
          Dst:             Semaphore_destroy
        - Src:             'src/iec61850/server/mms_mapping/control.c:1383,9'
          Dst:             Memory_free
    - functionName:    ControlObject_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 989
      functionLinenumberEnd: 1050
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          136
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - ControlObject_destroy
        - Memory_calloc
        - MmsValue_newDefaultValue
        - MmsValue_newUnsigned
        - MmsVariableSpecification_getChildSpecificationByName
        - Semaphore_create
        - StringUtils_copyString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/control.c:990,44'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/control.c:999,23'
          Dst:             Semaphore_create
        - Src:             'src/iec61850/server/mms_mapping/control.c:1000,31'
          Dst:             Semaphore_create
        - Src:             'src/iec61850/server/mms_mapping/control.c:1004,9'
          Dst:             ControlObject_destroy
        - Src:             'src/iec61850/server/mms_mapping/control.c:1010,18'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/control.c:1014,9'
          Dst:             ControlObject_destroy
        - Src:             'src/iec61850/server/mms_mapping/control.c:1023,44'
          Dst:             MmsVariableSpecification_getChildSpecificationByName
        - Src:             'src/iec61850/server/mms_mapping/control.c:1027,24'
          Dst:             MmsValue_newDefaultValue
        - Src:             'src/iec61850/server/mms_mapping/control.c:1035,44'
          Dst:             MmsVariableSpecification_getChildSpecificationByName
        - Src:             'src/iec61850/server/mms_mapping/control.c:1039,24'
          Dst:             MmsValue_newDefaultValue
        - Src:             'src/iec61850/server/mms_mapping/control.c:1047,20'
          Dst:             MmsValue_newUnsigned
    - functionName:    MmsServerConnection_sendInformationReportVMDSpecific
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_information_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          215
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - BerEncoder_determineEncodedStringSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeStringWithTag
        - BerEncoder_encodeTL
        - IsoConnection_lock
        - IsoConnection_sendMessage
        - IsoConnection_unlock
        - LinkedList_getNext
        - MmsServer_releaseTransmitBuffer
        - MmsServer_reserveTransmitBuffer
        - MmsValue_encodeMmsData
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:261,19'
          Dst:             BerEncoder_determineEncodedStringSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:263,28'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:267,24'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:273,29'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:275,17'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:279,13'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:284,13'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:286,64'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:298,9'
          Dst:             IsoConnection_lock
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:301,33'
          Dst:             MmsServer_reserveTransmitBuffer
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:307,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:308,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:310,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:311,14'
          Dst:             BerEncoder_encodeStringWithTag
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:313,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:315,13'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:321,18'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:323,17'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:328,5'
          Dst:             IsoConnection_sendMessage
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:330,5'
          Dst:             MmsServer_releaseTransmitBuffer
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:334,9'
          Dst:             IsoConnection_unlock
    - functionName:    MmsServerConnection_sendInformationReportListOfVariables
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_information_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          383
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - BerEncoder_determineEncodedStringSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeStringWithTag
        - BerEncoder_encodeTL
        - IsoConnection_lock
        - IsoConnection_sendMessage
        - IsoConnection_unlock
        - LinkedList_getNext
        - MmsServer_releaseTransmitBuffer
        - MmsServer_reserveTransmitBuffer
        - MmsValue_encodeMmsData
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:115,30'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:121,32'
          Dst:             BerEncoder_determineEncodedStringSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:124,28'
          Dst:             BerEncoder_determineEncodedStringSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:126,52'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:128,35'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:131,23'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:134,39'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:138,31'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:144,29'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:146,24'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:149,43'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:151,37'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:155,42'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:158,64'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:170,9'
          Dst:             IsoConnection_lock
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:174,32'
          Dst:             MmsServer_reserveTransmitBuffer
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:180,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:181,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:184,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:186,19'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:193,32'
          Dst:             BerEncoder_determineEncodedStringSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:197,28'
          Dst:             BerEncoder_determineEncodedStringSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:198,60'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:199,59'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:201,22'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:202,22'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:203,22'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:204,22'
          Dst:             BerEncoder_encodeStringWithTag
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:205,22'
          Dst:             BerEncoder_encodeStringWithTag
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:209,51'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:210,22'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:211,22'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:212,22'
          Dst:             BerEncoder_encodeStringWithTag
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:216,23'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:220,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:222,20'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:228,18'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:230,24'
          Dst:             LinkedList_getNext
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:235,5'
          Dst:             IsoConnection_sendMessage
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:237,5'
          Dst:             MmsServer_releaseTransmitBuffer
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:242,9'
          Dst:             IsoConnection_unlock
    - functionName:    MmsServerConnection_sendInformationReportSingleVariableVMDSpecific
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/server/mms_information_report.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          197
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeStringWithTag
        - BerEncoder_encodeTL
        - IsoConnection_lock
        - IsoConnection_sendMessage
        - IsoConnection_unlock
        - MmsServer_releaseTransmitBuffer
        - MmsServer_reserveTransmitBuffer
        - MmsValue_encodeMmsData
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:35,24'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:36,29'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:37,30'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:38,36'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:40,30'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:42,40'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:44,34'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:48,39'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:51,64'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:65,9'
          Dst:             IsoConnection_lock
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:68,29'
          Dst:             MmsServer_reserveTransmitBuffer
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:74,11'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:75,11'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:78,11'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:79,11'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:80,11'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:81,11'
          Dst:             BerEncoder_encodeStringWithTag
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:84,11'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:85,11'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:89,5'
          Dst:             IsoConnection_sendMessage
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:91,5'
          Dst:             MmsServer_releaseTransmitBuffer
        - Src:             'src/mms/iso_mms/server/mms_information_report.c:95,9'
          Dst:             IsoConnection_unlock
    - functionName:    GOOSE_processGooseEvents
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4941
      functionLinenumberEnd: 4955
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_getNext
        - MmsGooseControlBlock_checkAndPublish
        - MmsGooseControlBlock_isEnabled
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4942,26'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4948,13'
          Dst:             MmsGooseControlBlock_isEnabled
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4950,13'
          Dst:             MmsGooseControlBlock_checkAndPublish
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4953,19'
          Dst:             LinkedList_getNext
    - functionName:    isMemberValueRecursive
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4579
      functionLinenumberEnd: 4602
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          87
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - MmsValue_getArraySize
        - MmsValue_getElement
        - MmsValue_getType
        - isMemberValueRecursive
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4586,14'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4586,64'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4589,29'
          Dst:             MmsValue_getArraySize
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4593,44'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4593,21'
          Dst:             isMemberValueRecursive
    - functionName:    checkDataSetAccess
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4274
      functionLinenumberEnd: 4304
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - StringUtils_appendString
        - StringUtils_copyStringMax
        - private_IedServer_getClientConnectionByHandle
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4279,45'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4287,13'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4291,13'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4295,13'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4296,13'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4297,13'
          Dst:             StringUtils_appendString
    - functionName:    unselectAllSettingGroups
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 649
      functionLinenumberEnd: 661
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_getData
        - LinkedList_getNext
        - unselectEditSettingGroup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:650,38'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:654,53'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:657,13'
          Dst:             unselectEditSettingGroup
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:659,31'
          Dst:             LinkedList_getNext
    - functionName:    unselectEditSettingGroup
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 631
      functionLinenumberEnd: 645
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_getElement
        - MmsValue_setUint16
        - MmsValue_setUint8
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:638,24'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:640,9'
          Dst:             MmsValue_setUint8
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:642,25'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:644,9'
          Dst:             MmsValue_setUint16
    - functionName:    unselectControlsForConnection
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3707
      functionLinenumberEnd: 3718
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ControlObject_unselect
        - LinkedList_getNext
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3708,39'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3714,9'
          Dst:             ControlObject_unselect
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3716,32'
          Dst:             LinkedList_getNext
    - functionName:    getWriteAccessResultForFCDO
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2813
      functionLinenumberEnd: 2874
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          209
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - DataObject_hasFCData
        - IedServer_updateAttributeValue
        - MmsValue_getElement
        - getWriteAccessResultForFCDO
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2828,38'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2838,29'
          Dst:             IedServer_updateAttributeValue
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2855,17'
          Dst:             DataObject_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2857,38'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2859,26'
          Dst:             getWriteAccessResultForFCDO
    - functionName:    isFunctionalConstraint
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2428
      functionLinenumberEnd: 2433
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strncmp
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2429,9'
          Dst:             strncmp
    - functionName:    getAccessPolicyForFC
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2759
      functionLinenumberEnd: 2809
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          159
      EdgeCount:       37
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getFunctionalConstraintForWritableNode
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2740
      functionLinenumberEnd: 2755
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          68
      EdgeCount:       22
      CyclomaticComplexity: 8
      functionsReached:
        - isFunctionalConstraint
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2741,9'
          Dst:             isFunctionalConstraint
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2743,9'
          Dst:             isFunctionalConstraint
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2745,9'
          Dst:             isFunctionalConstraint
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2747,9'
          Dst:             isFunctionalConstraint
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2749,9'
          Dst:             isFunctionalConstraint
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2751,9'
          Dst:             isFunctionalConstraint
    - functionName:    getSettingGroupByMmsDomain
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 595
      functionLinenumberEnd: 609
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_getData
        - LinkedList_getNext
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:596,38'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:600,53'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:605,31'
          Dst:             LinkedList_getNext
    - functionName:    isSettingGroupControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 586
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:587,9'
          Dst:             strncmp
    - functionName:    writeAccessGooseControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2567
      functionLinenumberEnd: 2734
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          256
      EdgeCount:       55
      CyclomaticComplexity: 17
      functionsReached:
        - MmsGooseControlBlock_disable
        - MmsGooseControlBlock_enable
        - MmsGooseControlBlock_getLogicalNode
        - MmsGooseControlBlock_getName
        - MmsGooseControlBlock_getNdsCom
        - MmsGooseControlBlock_isEnabled
        - MmsMapping_getNextNameElement
        - MmsValue_getBoolean
        - MmsValue_getType
        - StringUtils_copyStringMax
        - lookupGCB
        - private_IedServer_getClientConnectionByHandle
        - strchr
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2570,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2572,23'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2581,24'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2586,21'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2593,35'
          Dst:             lookupGCB
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2601,27'
          Dst:             MmsGooseControlBlock_getLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2605,45'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2608,53'
          Dst:             MmsGooseControlBlock_getName
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2615,9'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2617,13'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2620,13'
          Dst:             MmsGooseControlBlock_getNdsCom
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2623,13'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2625,17'
          Dst:             MmsGooseControlBlock_enable
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2637,13'
          Dst:             MmsGooseControlBlock_disable
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2647,13'
          Dst:             MmsGooseControlBlock_isEnabled
    - functionName:    MmsMapping_getNextNameElement
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2490
      functionLinenumberEnd: 2502
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - strchr
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2491,23'
          Dst:             strchr
    - functionName:    lookupGCB
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2508
      functionLinenumberEnd: 2530
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          83
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - LinkedList_getNext
        - MmsGooseControlBlock_getDomain
        - MmsGooseControlBlock_getLogicalNodeName
        - MmsGooseControlBlock_getName
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2509,26'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2515,13'
          Dst:             MmsGooseControlBlock_getDomain
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2517,24'
          Dst:             MmsGooseControlBlock_getLogicalNodeName
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2517,17'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2519,28'
          Dst:             MmsGooseControlBlock_getName
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2519,21'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2526,19'
          Dst:             LinkedList_getNext
    - functionName:    isReportControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2415
      functionLinenumberEnd: 2423
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          42
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - strncmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2416,9'
          Dst:             strncmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2419,9'
          Dst:             strncmp
    - functionName:    isLogControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2479
      functionLinenumberEnd: 2484
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strncmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2480,9'
          Dst:             strncmp
    - functionName:    isSampledValueControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2463
      functionLinenumberEnd: 2471
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          42
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - strncmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2464,9'
          Dst:             strncmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2467,9'
          Dst:             strncmp
    - functionName:    readAccessGooseControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3491
      functionLinenumberEnd: 3551
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          167
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - MmsGooseControlBlock_getLogicalNode
        - MmsGooseControlBlock_getMmsValues
        - MmsGooseControlBlock_getName
        - MmsGooseControlBlock_getVariableSpecification
        - MmsMapping_getNextNameElement
        - MmsValue_getSubElement
        - StringUtils_copyStringMax
        - lookupGCB
        - private_IedServer_getClientConnectionByHandle
        - strchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3496,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3498,23'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3507,24'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3512,21'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3517,35'
          Dst:             lookupGCB
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3524,31'
          Dst:             MmsGooseControlBlock_getLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3529,17'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3532,74'
          Dst:             MmsGooseControlBlock_getName
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3541,44'
          Dst:             MmsGooseControlBlock_getMmsValues
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3542,44'
          Dst:             MmsGooseControlBlock_getVariableSpecification
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3541,21'
          Dst:             MmsValue_getSubElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3546,21'
          Dst:             MmsGooseControlBlock_getMmsValues
    - functionName:    isGooseControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2450
      functionLinenumberEnd: 2455
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strncmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2451,9'
          Dst:             strncmp
    - functionName:    isControllable
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2438
      functionLinenumberEnd: 2443
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strncmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2439,9'
          Dst:             strncmp
    - functionName:    getLocbTrackingAttributes
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1373
      functionLinenumberEnd: 1406
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          132
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1382,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1386,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1390,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1394,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1398,23'
          Dst:             strcmp
    - functionName:    getSgcbTrackingAttributes
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1326
      functionLinenumberEnd: 1369
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          179
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1335,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1339,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1343,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1347,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1351,23'
          Dst:             strcmp
    - functionName:    getGocbTrackingAttributes
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1274
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         41
      ICount:          204
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1283,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1287,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1291,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1295,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1299,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1303,23'
          Dst:             strcmp
    - functionName:    getUrcbTrackingAttributes
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1201
      functionLinenumberEnd: 1270
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         66
      ICount:          326
      EdgeCount:       90
      CyclomaticComplexity: 26
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1210,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1214,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1218,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1222,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1226,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1230,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1234,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1238,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1242,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1246,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1250,23'
          Dst:             strcmp
    - functionName:    getBrcbTrackingAttributes
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1116
      functionLinenumberEnd: 1197
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         79
      ICount:          392
      EdgeCount:       108
      CyclomaticComplexity: 31
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1125,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1129,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1133,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1137,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1141,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1145,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1149,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1153,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1157,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1161,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1165,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1169,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1173,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1177,23'
          Dst:             strcmp
    - functionName:    getControlTrackingAttributes
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1410
      functionLinenumberEnd: 1455
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          177
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1419,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1423,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1427,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1431,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1435,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1439,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1443,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1447,23'
          Dst:             strcmp
    - functionName:    getCommonTrackingAttributes
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1069
      functionLinenumberEnd: 1112
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         34
      ICount:          167
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - strcmp
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1078,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1082,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1086,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1090,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1094,23'
          Dst:             strcmp
    - functionName:    createSGCB
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 470
      functionLinenumberEnd: 524
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          171
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_calloc
        - StringUtils_copyString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:477,36'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:478,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:483,37'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:487,42'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:488,21'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:493,42'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:494,21'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:499,42'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:500,21'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:505,42'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:506,21'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:510,42'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:511,21'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:517,46'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:518,25'
          Dst:             StringUtils_copyString
    - functionName:    createNamedVariableFromDataAttribute
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         58
      ICount:          511
      EdgeCount:       64
      CyclomaticComplexity: 8
      functionsReached:
        - Memory_calloc
        - MmsMapping_createPhyComAddrStructure
        - ModelNode_getChildCount
        - StringUtils_copyString
        - createNamedVariableFromDataAttribute
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/iec61850/server/mms_mapping/mms_mapping.c:178,9'
          Branch Sides:    []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:120,36'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:123,35'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:139,40'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:158,30'
          Dst:             ModelNode_getChildCount
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:161,41'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:168,61'
          Dst:             createNamedVariableFromDataAttribute
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:296,13'
          Dst:             MmsMapping_createPhyComAddrStructure
    - functionName:    MmsMapping_createPhyComAddrStructure
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          102
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
        - StringUtils_copyString
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:87,37'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:91,42'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:92,21'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:97,42'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:98,21'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:103,42'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:104,21'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:109,42'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:110,21'
          Dst:             StringUtils_copyString
    - functionName:    countChildrenWithFc
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          93
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - DataObject_hasFCData
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:337,17'
          Dst:             DataObject_hasFCData
    - functionName:    createFCNamedVariableFromDataObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 349
      functionLinenumberEnd: 408
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          185
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - DataObject_hasFCData
        - Memory_calloc
        - StringUtils_copyString
        - countChildrenWithFc
        - createFCNamedVariableFromDataObject
        - createNamedVariableFromDataAttribute
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:351,36'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:355,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:362,40'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:371,24'
          Dst:             countChildrenWithFc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:375,37'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:388,65'
          Dst:             createNamedVariableFromDataAttribute
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:396,17'
          Dst:             DataObject_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:398,65'
          Dst:             createFCNamedVariableFromDataObject
    - functionName:    checkForServiceTrackingVariables
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1459
      functionLinenumberEnd: 1674
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         116
      ICount:          649
      EdgeCount:       156
      CyclomaticComplexity: 42
      functionsReached:
        - Memory_calloc
        - getBrcbTrackingAttributes
        - getCommonTrackingAttributes
        - getControlTrackingAttributes
        - getGocbTrackingAttributes
        - getLocbTrackingAttributes
        - getSgcbTrackingAttributes
        - getUrcbTrackingAttributes
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1464,14'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1464,52'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1465,14'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1465,52'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1466,14'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1466,53'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1467,14'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1467,52'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1468,14'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1476,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1478,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1480,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1482,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1484,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1486,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1488,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1490,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1492,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1504,56'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1510,25'
          Dst:             getCommonTrackingAttributes
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1511,25'
          Dst:             getControlTrackingAttributes
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1516,19'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1531,50'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1537,21'
          Dst:             getCommonTrackingAttributes
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1538,21'
          Dst:             getBrcbTrackingAttributes
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1542,19'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1557,50'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1563,21'
          Dst:             getCommonTrackingAttributes
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1564,21'
          Dst:             getUrcbTrackingAttributes
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1568,19'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1583,50'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1589,21'
          Dst:             getCommonTrackingAttributes
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1590,21'
          Dst:             getGocbTrackingAttributes
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1594,19'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1609,50'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1615,21'
          Dst:             getCommonTrackingAttributes
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1616,21'
          Dst:             getSgcbTrackingAttributes
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1620,19'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1635,50'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1641,21'
          Dst:             getCommonTrackingAttributes
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1642,21'
          Dst:             getLocbTrackingAttributes
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1646,19'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1661,52'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1667,21'
          Dst:             getCommonTrackingAttributes
    - functionName:    createFCNamedVariableSPWithSGCB
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 581
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          142
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - DataObject_hasFCData
        - Memory_calloc
        - StringUtils_copyString
        - createFCNamedVariableFromDataObject
        - createSGCB
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:531,36'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:535,31'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:544,17'
          Dst:             DataObject_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:552,41'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:558,61'
          Dst:             createSGCB
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:564,21'
          Dst:             DataObject_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:567,25'
          Dst:             createFCNamedVariableFromDataObject
    - functionName:    createFCNamedVariable
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 413
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          137
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - DataObject_hasFCData
        - FunctionalConstraint_toString
        - Memory_calloc
        - StringUtils_copyString
        - createFCNamedVariableFromDataObject
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:415,36'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:419,54'
          Dst:             FunctionalConstraint_toString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:419,31'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:428,17'
          Dst:             DataObject_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:436,41'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:446,21'
          Dst:             DataObject_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:449,25'
          Dst:             createFCNamedVariableFromDataObject
    - functionName:    countSVControlBlocksForLogicalNode
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1027
      functionLinenumberEnd: 1040
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    countGSEControlBlocksForLogicalNode
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1005
      functionLinenumberEnd: 1018
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          47
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    countLogControlBlocksForLogicalNode
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 984
      functionLinenumberEnd: 997
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          47
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    countReportControlBlocksForLogicalNode
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 960
      functionLinenumberEnd: 977
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    checkForSgcb
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1049
      functionLinenumberEnd: 1061
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          46
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    determineLogicalNodeComponentCount
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 912
      functionLinenumberEnd: 954
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         42
      ICount:          198
      EdgeCount:       55
      CyclomaticComplexity: 15
      functionsReached:
        - LogicalNode_hasFCData
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:915,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:918,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:921,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:924,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:927,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:930,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:933,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:936,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:939,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:942,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:945,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:948,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:951,9'
          Dst:             LogicalNode_hasFCData
    - functionName:    createNamedVariableFromLogicalNode
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1680
      functionLinenumberEnd: 1979
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         93
      ICount:          756
      EdgeCount:       123
      CyclomaticComplexity: 32
      functionsReached:
        - GOOSE_createGOOSEControlBlocks
        - LIBIEC61850_SV_createSVControlBlocks
        - LinkedList_add
        - Logging_createLCBs
        - LogicalNode_hasFCData
        - Memory_calloc
        - Memory_malloc
        - Reporting_createMmsBufferedRCBs
        - Reporting_createMmsUnbufferedRCBs
        - StringUtils_copyString
        - checkForServiceTrackingVariables
        - checkForSgcb
        - countGSEControlBlocksForLogicalNode
        - countLogControlBlocksForLogicalNode
        - countReportControlBlocksForLogicalNode
        - countSVControlBlocksForLogicalNode
        - createFCNamedVariable
        - createFCNamedVariableSPWithSGCB
        - determineLogicalNodeComponentCount
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1682,36'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1684,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1688,26'
          Dst:             determineLogicalNodeComponentCount
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1693,22'
          Dst:             checkForSgcb
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1697,13'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1700,53'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1705,9'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1713,21'
          Dst:             countReportControlBlocksForLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1722,21'
          Dst:             countReportControlBlocksForLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1734,20'
          Dst:             countLogControlBlocksForLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1748,20'
          Dst:             countGSEControlBlocksForLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1761,22'
          Dst:             countSVControlBlocksForLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1771,22'
          Dst:             countSVControlBlocksForLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1784,37'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1789,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1792,13'
          Dst:             createFCNamedVariable
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1796,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1799,13'
          Dst:             createFCNamedVariable
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1803,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1806,13'
          Dst:             createFCNamedVariable
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1810,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1813,13'
          Dst:             createFCNamedVariable
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1817,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1820,13'
          Dst:             createFCNamedVariable
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1835,13'
          Dst:             createFCNamedVariableSPWithSGCB
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1840,13'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1843,17'
          Dst:             createFCNamedVariable
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1847,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1850,13'
          Dst:             createFCNamedVariable
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1858,13'
          Dst:             Reporting_createMmsUnbufferedRCBs
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1873,17'
          Dst:             Logging_createLCBs
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1888,13'
          Dst:             Reporting_createMmsBufferedRCBs
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1897,13'
          Dst:             GOOSE_createGOOSEControlBlocks
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1903,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1906,13'
          Dst:             createFCNamedVariable
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1910,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1913,13'
          Dst:             createFCNamedVariable
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1923,13'
          Dst:             LIBIEC61850_SV_createSVControlBlocks
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1931,13'
          Dst:             LIBIEC61850_SV_createSVControlBlocks
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1937,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1940,13'
          Dst:             createFCNamedVariable
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1944,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1947,13'
          Dst:             createFCNamedVariable
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1956,9'
          Dst:             checkForServiceTrackingVariables
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1963,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1966,13'
          Dst:             createFCNamedVariable
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1970,9'
          Dst:             LogicalNode_hasFCData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1973,13'
          Dst:             createFCNamedVariable
    - functionName:    createMmsDomainFromIedDevice
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1984
      functionLinenumberEnd: 2086
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          259
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - LinkedList_add
        - LogInstance_create
        - LogicalDevice_getLogicalNodeCount
        - Memory_malloc
        - MmsDomain_addJournal
        - MmsDomain_create
        - StringUtils_appendString
        - StringUtils_concatString
        - StringUtils_copyStringMax
        - createNamedVariableFromLogicalNode
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1990,31'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:1991,26'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2002,9'
          Dst:             StringUtils_concatString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2006,13'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2009,9'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2012,14'
          Dst:             MmsDomain_create
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2033,34'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2033,62'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2043,21'
          Dst:             StringUtils_concatString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2044,21'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2046,21'
          Dst:             MmsDomain_addJournal
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2048,48'
          Dst:             LogInstance_create
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2050,21'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2063,22'
          Dst:             LogicalDevice_getLogicalNodeCount
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2067,58'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2078,41'
          Dst:             createNamedVariableFromLogicalNode
    - functionName:    createDataSets
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2121
      functionLinenumberEnd: 2206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          182
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - IedModel_getDeviceByInst
        - MmsDevice_getDomain
        - MmsDomain_addNamedVariableList
        - MmsNamedVariableListEntry_create
        - MmsNamedVariableList_addVariable
        - MmsNamedVariableList_create
        - StringUtils_concatString
        - StringUtils_copyStringMax
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2126,30'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2139,29'
          Dst:             IedModel_getDeviceByInst
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2145,17'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2149,17'
          Dst:             StringUtils_concatString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2152,40'
          Dst:             MmsDevice_getDomain
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2165,44'
          Dst:             MmsNamedVariableList_create
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2175,21'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2179,21'
          Dst:             StringUtils_concatString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2182,42'
          Dst:             MmsDevice_getDomain
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2187,63'
          Dst:             MmsNamedVariableListEntry_create
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2189,17'
          Dst:             MmsNamedVariableList_addVariable
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2194,13'
          Dst:             MmsDomain_addNamedVariableList
    - functionName:    createMmsDataModel
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2091
      functionLinenumberEnd: 2117
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          97
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - Memory_calloc
        - createMmsDomainFromIedDevice
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2092,39'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2104,33'
          Dst:             createMmsDomainFromIedDevice
    - functionName:    MmsMapping_freeDynamicallyCreatedDataSet
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5219
      functionLinenumberEnd: 5232
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5226,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5231,5'
          Dst:             Memory_free
    - functionName:    MmsMapping_getDomainSpecificDataSet
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5208
      functionLinenumberEnd: 5215
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsMapping_createDataSetByNamedVariableList
        - MmsMapping_getDomainSpecificVariableList
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5209,41'
          Dst:             MmsMapping_getDomainSpecificVariableList
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5214,12'
          Dst:             MmsMapping_createDataSetByNamedVariableList
    - functionName:    MmsMapping_getDomainSpecificVariableList
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5180
      functionLinenumberEnd: 5204
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          68
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - MmsDevice_getDomain
        - MmsDomain_getNamedVariableList
        - StringUtils_copyStringMax
        - strchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5183,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5185,23'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5196,25'
          Dst:             MmsDevice_getDomain
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5201,41'
          Dst:             MmsDomain_getNamedVariableList
    - functionName:    MmsMapping_createDataSetByNamedVariableList
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5050
      functionLinenumberEnd: 5175
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         42
      ICount:          290
      EdgeCount:       55
      CyclomaticComplexity: 15
      functionsReached:
        - IedModel_getDevice
        - LinkedList_getNext
        - LinkedList_size
        - Memory_calloc
        - Memory_malloc
        - MmsDomain_getName
        - MmsServer_getValueFromCacheEx
        - MmsValue_getElement
        - MmsVariableSpecification_getChildValue
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5051,34'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5057,65'
          Dst:             MmsDomain_getName
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5057,33'
          Dst:             IedModel_getDevice
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5073,33'
          Dst:             LinkedList_size
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5075,30'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5083,70'
          Dst:             MmsDomain_getName
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5083,38'
          Dst:             IedModel_getDevice
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5087,61'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5106,51'
          Dst:             MmsServer_getValueFromCacheEx
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5115,58'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5124,69'
          Dst:             MmsVariableSpecification_getChildValue
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5171,23'
          Dst:             LinkedList_getNext
    - functionName:    MmsMapping_stopEventWorkerThread
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5034
      functionLinenumberEnd: 5045
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Thread_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5041,13'
          Dst:             Thread_destroy
    - functionName:    eventWorkerThread
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5000
      functionLinenumberEnd: 5015
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Thread_sleep
        - processPeriodicTasks
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5005,9'
          Dst:             processPeriodicTasks
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5007,9'
          Dst:             Thread_sleep
    - functionName:    processPeriodicTasks
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4961
      functionLinenumberEnd: 4988
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Control_processControlActions
        - GOOSE_processGooseEvents
        - Hal_getMonotonicTimeInMs
        - Hal_getTimeInMs
        - Logging_processIntegrityLogs
        - MmsMapping_checkForSettingGroupReservationTimeouts
        - MmsServer_handleBackgroundTasks
        - Reporting_processReportEvents
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4962,41'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4966,9'
          Dst:             GOOSE_processGooseEvents
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4970,5'
          Dst:             Control_processControlActions
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4974,41'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4974,5'
          Dst:             Reporting_processReportEvents
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4978,5'
          Dst:             MmsMapping_checkForSettingGroupReservationTimeouts
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4982,5'
          Dst:             Logging_processIntegrityLogs
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4987,9'
          Dst:             MmsServer_handleBackgroundTasks
    - functionName:    MmsMapping_checkForSettingGroupReservationTimeouts
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 781
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          67
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - LinkedList_getData
        - LinkedList_getNext
        - unselectEditSettingGroup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:769,38'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:773,53'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:777,17'
          Dst:             unselectEditSettingGroup
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:779,31'
          Dst:             LinkedList_getNext
    - functionName:    MmsMapping_startEventWorkerThread
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5020
      functionLinenumberEnd: 5030
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Thread_create
        - Thread_start
        - eventWorkerThread
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5023,21'
          Dst:             Thread_create
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5023,21'
          Dst:             eventWorkerThread
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:5028,9'
          Dst:             Thread_start
    - functionName:    IedServer_performPeriodicTasks
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4992
      functionLinenumberEnd: 4994
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - processPeriodicTasks
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4993,5'
          Dst:             processPeriodicTasks
    - functionName:    MmsMapping_getControlObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4932
      functionLinenumberEnd: 4933
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Control_lookupControlObject
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4933,12'
          Dst:             Control_lookupControlObject
    - functionName:    MmsMapping_addControlObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4926
      functionLinenumberEnd: 4928
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - LinkedList_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4927,5'
          Dst:             LinkedList_add
    - functionName:    MmsMapping_disableGoosePublishing
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4910
      functionLinenumberEnd: 4919
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_getNext
        - MmsGooseControlBlock_disable
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4913,23'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4917,9'
          Dst:             MmsGooseControlBlock_disable
    - functionName:    MmsMapping_setGooseInterfaceId
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4887
      functionLinenumberEnd: 4906
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          77
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - LinkedList_getNext
        - MmsGooseControlBlock_getLogicalNode
        - MmsGooseControlBlock_getName
        - MmsGooseControlBlock_setGooseInterfaceId
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4890,23'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4896,13'
          Dst:             MmsGooseControlBlock_setGooseInterfaceId
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4900,18'
          Dst:             MmsGooseControlBlock_getLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4900,77'
          Dst:             MmsGooseControlBlock_getName
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4900,70'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4902,17'
          Dst:             MmsGooseControlBlock_setGooseInterfaceId
    - functionName:    MmsMapping_useGooseVlanTag
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4864
      functionLinenumberEnd: 4883
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          80
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - LinkedList_getNext
        - MmsGooseControlBlock_getLogicalNode
        - MmsGooseControlBlock_getName
        - MmsGooseControlBlock_useGooseVlanTag
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4867,23'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4873,13'
          Dst:             MmsGooseControlBlock_useGooseVlanTag
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4877,18'
          Dst:             MmsGooseControlBlock_getLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4877,77'
          Dst:             MmsGooseControlBlock_getName
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4877,70'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4879,17'
          Dst:             MmsGooseControlBlock_useGooseVlanTag
    - functionName:    MmsMapping_enableGoosePublishing
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4845
      functionLinenumberEnd: 4860
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_getData
        - LinkedList_getNext
        - MmsGooseControlBlock_enable
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4846,26'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4850,58'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4852,13'
          Dst:             MmsGooseControlBlock_enable
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4858,19'
          Dst:             LinkedList_getNext
    - functionName:    MmsMapping_triggerGooseObservers
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4822
      functionLinenumberEnd: 4841
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          63
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - DataSet_isMemberValue
        - LinkedList_getNext
        - MmsGooseControlBlock_getDataSet
        - MmsGooseControlBlock_isEnabled
        - MmsGooseControlBlock_publishNewState
        - MmsGooseControlBlock_setStateChangePending
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4825,23'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4829,13'
          Dst:             MmsGooseControlBlock_isEnabled
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4831,32'
          Dst:             MmsGooseControlBlock_getDataSet
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4833,17'
          Dst:             DataSet_isMemberValue
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4835,17'
          Dst:             MmsGooseControlBlock_setStateChangePending
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4837,17'
          Dst:             MmsGooseControlBlock_publishNewState
    - functionName:    DataSet_isMemberValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4609
      functionLinenumberEnd: 4636
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          79
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - isMemberValueRecursive
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4621,17'
          Dst:             isMemberValueRecursive
    - functionName:    MmsMapping_triggerReportObservers
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4764
      functionLinenumberEnd: 4814
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          168
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - DataSet_isMemberValue
        - LinkedList_getNext
        - ReportControl_valueUpdated
        - Reporting_processReportEventsAfterUnlock
        - Semaphore_post
        - Semaphore_wait
      functionUses:    4
      BranchProfiles:
        - Branch String:   'src/iec61850/server/mms_mapping/mms_mapping.c:4781,13'
          Branch Sides:    []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4768,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4773,23'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4799,17'
          Dst:             DataSet_isMemberValue
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4801,17'
          Dst:             ReportControl_valueUpdated
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4808,9'
          Dst:             Reporting_processReportEventsAfterUnlock
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4812,5'
          Dst:             Semaphore_post
    - functionName:    DataSet_isMemberValueWithRef
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4643
      functionLinenumberEnd: 4673
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          103
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - isMemberValueRecursive
        - sprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4655,17'
          Dst:             isMemberValueRecursive
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4658,21'
          Dst:             sprintf
    - functionName:    MmsMapping_triggerLogging
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4677
      functionLinenumberEnd: 4757
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          231
      EdgeCount:       59
      CyclomaticComplexity: 15
      functionsReached:
        - DataSet_isMemberValueWithRef
        - LinkedList_getNext
        - LogInstance_logSingleData
      functionUses:    4
      BranchProfiles:
        - Branch String:   'src/iec61850/server/mms_mapping/mms_mapping.c:4688,13'
          Branch Sides:    []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4680,23'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4723,17'
          Dst:             DataSet_isMemberValueWithRef
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4745,29'
          Dst:             LogInstance_logSingleData
    - functionName:    MmsMapping_setConnectionIndicationHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4572
      functionLinenumberEnd: 4575
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmsReadJournalHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4517
      functionLinenumberEnd: 4550
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          100
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - IedModel_getDevice
        - LogicalDevice_getLogicalNode
        - StringUtils_copyStringMax
        - private_IedServer_getClientConnectionByHandle
        - strchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4524,45'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4526,29'
          Dst:             IedModel_getDevice
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4532,9'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4536,27'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4543,18'
          Dst:             LogicalDevice_getLogicalNode
    - functionName:    mmsGetNameListHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3724
      functionLinenumberEnd: 3762
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          130
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - IedModel_getDevice
        - MmsDomain_getName
        - private_IedServer_getClientConnectionByHandle
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3735,45'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3739,50'
          Dst:             MmsDomain_getName
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3739,18'
          Dst:             IedModel_getDevice
    - functionName:    variableListAccessHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4310
      functionLinenumberEnd: 4511
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         111
      ICount:          533
      EdgeCount:       148
      CyclomaticComplexity: 39
      functionsReached:
        - IedModel_getDevice
        - LinkedList_getNext
        - LogicalDevice_getLogicalNode
        - MmsDomain_getName
        - checkDataSetAccess
        - strchr
        - strcmp
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4347,13'
          Dst:             checkDataSetAccess
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4357,37'
          Dst:             IedModel_getDevice
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4363,39'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4372,29'
          Dst:             LogicalDevice_getLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4385,13'
          Dst:             checkDataSetAccess
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4391,33'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4403,37'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4406,48'
          Dst:             MmsDomain_getName
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4406,76'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4405,41'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4418,37'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4429,37'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4444,34'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4456,37'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4459,48'
          Dst:             MmsDomain_getName
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4459,76'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4458,41'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4471,37'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4491,13'
          Dst:             checkDataSetAccess
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4498,13'
          Dst:             checkDataSetAccess
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4505,13'
          Dst:             checkDataSetAccess
    - functionName:    mmsConnectionHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3767
      functionLinenumberEnd: 3813
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          133
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ClientConnection_release
        - Reporting_deactivateReportsForConnection
        - Reporting_sendReports
        - private_ClientConnection_create
        - private_ClientConnection_invalidate
        - private_IedServer_addNewClientConnection
        - private_IedServer_getClientConnectionByHandle
        - private_IedServer_removeClientConnection
        - unselectAllSettingGroups
        - unselectControlsForConnection
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3772,9'
          Dst:             Reporting_sendReports
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3776,45'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3783,9'
          Dst:             private_IedServer_removeClientConnection
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3786,9'
          Dst:             Reporting_deactivateReportsForConnection
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3790,9'
          Dst:             unselectControlsForConnection
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3794,9'
          Dst:             unselectAllSettingGroups
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3797,9'
          Dst:             private_ClientConnection_invalidate
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3799,9'
          Dst:             ClientConnection_release
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3804,48'
          Dst:             private_ClientConnection_create
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3806,9'
          Dst:             private_IedServer_addNewClientConnection
    - functionName:    mmsListObjectsAccessHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3818
      functionLinenumberEnd: 4110
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         102
      ICount:          738
      EdgeCount:       133
      CyclomaticComplexity: 33
      functionsReached:
        - FunctionalConstraint_fromString
        - IedModel_getDevice
        - LogicalDevice_getLogicalNode
        - MmsDomain_getName
        - ModelNode_getChild
        - StringUtils_copyStringToBuffer
        - StringUtils_copyStringToBufferAndReplace
        - StringUtils_createStringFromBufferInBufferMax
        - private_IedServer_getClientConnectionByHandle
        - strchr
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/iec61850/server/mms_mapping/mms_mapping.c:3959,21'
          Branch Sides:    []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3832,28'
          Dst:             MmsDomain_getName
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3834,33'
          Dst:             IedModel_getDevice
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3840,31'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3844,17'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3847,22'
          Dst:             LogicalDevice_getLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3856,17'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3871,28'
          Dst:             MmsDomain_getName
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3875,33'
          Dst:             IedModel_getDevice
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3879,31'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3883,17'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3886,22'
          Dst:             LogicalDevice_getLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3895,17'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3906,27'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3907,24'
          Dst:             MmsDomain_getName
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3909,29'
          Dst:             IedModel_getDevice
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3917,22'
          Dst:             FunctionalConstraint_fromString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3927,21'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3930,39'
          Dst:             LogicalDevice_getLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3934,41'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3938,43'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3942,33'
          Dst:             StringUtils_copyStringToBuffer
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3948,33'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3952,37'
          Dst:             StringUtils_copyStringToBufferAndReplace
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3988,29'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4003,21'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4006,39'
          Dst:             LogicalDevice_getLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4010,41'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4014,43'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4018,33'
          Dst:             StringUtils_copyStringToBuffer
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4024,33'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4028,37'
          Dst:             StringUtils_copyStringToBufferAndReplace
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4033,38'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4037,41'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4047,47'
          Dst:             ModelNode_getChild
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4054,41'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4070,33'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4084,35'
          Dst:             LogicalDevice_getLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4091,25'
          Dst:             private_IedServer_getClientConnectionByHandle
    - functionName:    mmsReadAccessHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4115
      functionLinenumberEnd: 4269
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         65
      ICount:          426
      EdgeCount:       89
      CyclomaticComplexity: 26
      functionsReached:
        - FunctionalConstraint_fromString
        - IedModel_getDevice
        - LogicalDevice_getLogicalNode
        - MmsDomain_getName
        - ModelNode_getChild
        - StringUtils_copyStringToBuffer
        - StringUtils_createStringFromBufferInBufferMax
        - getSettingGroupByMmsDomain
        - isFunctionalConstraint
        - private_IedServer_getClientConnectionByHandle
        - strchr
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4131,23'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4137,13'
          Dst:             isFunctionalConstraint
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4139,32'
          Dst:             getSettingGroupByMmsDomain
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4156,24'
          Dst:             MmsDomain_getName
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4158,29'
          Dst:             IedModel_getDevice
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4166,22'
          Dst:             FunctionalConstraint_fromString
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4177,21'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4180,39'
          Dst:             LogicalDevice_getLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4184,41'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4188,43'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4192,33'
          Dst:             StringUtils_copyStringToBuffer
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4198,33'
          Dst:             StringUtils_createStringFromBufferInBufferMax
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4204,38'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4209,45'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4224,47'
          Dst:             ModelNode_getChild
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4231,41'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4241,33'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4251,35'
          Dst:             LogicalDevice_getLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4256,25'
          Dst:             private_IedServer_getClientConnectionByHandle
    - functionName:    mmsWriteHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2879
      functionLinenumberEnd: 3430
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         214
      ICount:          1383
      EdgeCount:       292
      CyclomaticComplexity: 80
      functionsReached:
        - Control_writeAccessControlObject
        - Hal_getMonotonicTimeInMs
        - Hal_getTimeInMs
        - IedModel_getDevice
        - IedModel_getModelNodeByObjectReference
        - IedModel_lookupDataAttributeByMmsValue
        - IedServer_updateAttributeValue
        - LIBIEC61850_LOG_SVC_writeAccessLogControlBlock
        - LIBIEC61850_SV_writeAccessSVControlBlock
        - LinkedList_getNext
        - LogicalDevice_getLogicalNode
        - MmsMapping_getNextNameElement
        - MmsServer_getValueFromCache
        - MmsServer_getValueFromCacheEx2
        - MmsValue_equalTypes
        - MmsValue_getBoolean
        - MmsValue_getElement
        - MmsValue_setUint16
        - MmsValue_setUint8
        - MmsValue_setUtcTimeMsEx
        - MmsValue_toUint32
        - ModelNode_getChild
        - ModelNode_getChildWithIdx
        - Reporting_RCBWriteAccessHandler
        - StringUtils_copyStringMax
        - StringUtils_replace
        - copySGCBValuesToTrackingObject
        - getAccessPolicyForFC
        - getFunctionalConstraintForWritableNode
        - getSettingGroupByMmsDomain
        - getWriteAccessResultForFCDO
        - isControllable
        - isFunctionalConstraint
        - isGooseControlBlock
        - isLogControlBlock
        - isReportControlBlock
        - isSampledValueControlBlock
        - isSettingGroupControlBlock
        - memcmp
        - private_IedServer_getClientConnectionByHandle
        - strchr
        - strcmp
        - strlen
        - strncmp
        - strncpy
        - unselectEditSettingGroup
        - updateGenericTrackingObjectValues
        - writeAccessGooseControlBlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2903,30'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2912,9'
          Dst:             isControllable
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2914,16'
          Dst:             Control_writeAccessControlObject
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2921,9'
          Dst:             isGooseControlBlock
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2922,16'
          Dst:             writeAccessGooseControlBlock
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2929,9'
          Dst:             isSampledValueControlBlock
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2930,16'
          Dst:             LIBIEC61850_SV_writeAccessSVControlBlock
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2937,9'
          Dst:             isLogControlBlock
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2938,16'
          Dst:             LIBIEC61850_LOG_SVC_writeAccessLogControlBlock
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2944,9'
          Dst:             isReportControlBlock
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2946,28'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2951,21'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2958,29'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2962,31'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2968,42'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2973,21'
          Dst:             memcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2976,33'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2980,25'
          Dst:             strncmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2984,32'
          Dst:             Reporting_RCBWriteAccessHandler
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2995,9'
          Dst:             isSettingGroupControlBlock
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3000,25'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3004,23'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3019,21'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3021,37'
          Dst:             IedModel_getDevice
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3026,21'
          Dst:             strncpy
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3030,39'
          Dst:             LogicalDevice_getLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3057,17'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3059,36'
          Dst:             getSettingGroupByMmsDomain
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3064,36'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3073,37'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3080,55'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3081,56'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3083,37'
          Dst:             MmsValue_setUint8
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3084,69'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3084,37'
          Dst:             MmsValue_setUtcTimeMsEx
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3097,21'
          Dst:             copySGCBValuesToTrackingObject
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3098,21'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3108,22'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3110,36'
          Dst:             getSettingGroupByMmsDomain
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3117,40'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3128,33'
          Dst:             unselectEditSettingGroup
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3138,45'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3146,70'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3148,64'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3151,49'
          Dst:             MmsValue_setUint8
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3153,65'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3156,49'
          Dst:             MmsValue_setUint16
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3182,17'
          Dst:             copySGCBValuesToTrackingObject
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3183,17'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3187,22'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3189,36'
          Dst:             getSettingGroupByMmsDomain
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3196,36'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3209,41'
          Dst:             unselectEditSettingGroup
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3236,17'
          Dst:             copySGCBValuesToTrackingObject
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3237,17'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3247,31'
          Dst:             getFunctionalConstraintForWritableNode
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3252,28'
          Dst:             getSettingGroupByMmsDomain
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3271,27'
          Dst:             MmsServer_getValueFromCacheEx2
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3275,27'
          Dst:             MmsServer_getValueFromCache
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3280,18'
          Dst:             MmsValue_equalTypes
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3287,45'
          Dst:             getAccessPolicyForFC
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3293,17'
          Dst:             isFunctionalConstraint
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3295,36'
          Dst:             getSettingGroupByMmsDomain
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3310,50'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3320,25'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3339,43'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3348,33'
          Dst:             IedModel_getModelNodeByObjectReference
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3354,37'
          Dst:             ModelNode_getChild
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3360,25'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3362,41'
          Dst:             ModelNode_getChild
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3368,38'
          Dst:             ModelNode_getChildWithIdx
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3374,37'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3376,37'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3378,42'
          Dst:             ModelNode_getChild
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3387,37'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3396,53'
          Dst:             getWriteAccessResultForFCDO
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3415,37'
          Dst:             IedModel_lookupDataAttributeByMmsValue
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3418,21'
          Dst:             IedServer_updateAttributeValue
    - functionName:    strncpy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    copySGCBValuesToTrackingObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 667
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          150
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - MmsValue_getElement
        - MmsValue_setBoolean
        - MmsValue_setUint8
        - MmsValue_update
        - getSettingGroupBySGCB
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:673,13'
          Dst:             MmsValue_setUint8
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:676,13'
          Dst:             MmsValue_setUint8
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:679,13'
          Dst:             MmsValue_setUint8
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:682,13'
          Dst:             MmsValue_setBoolean
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:686,32'
          Dst:             getSettingGroupBySGCB
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:687,32'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:688,13'
          Dst:             MmsValue_update
    - functionName:    updateGenericTrackingObjectValues
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 731
      functionLinenumberEnd: 762
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          164
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - Hal_getTimeInMs
        - IedServer_updateVisibleStringAttributeValue
        - MmsValue_setInt32
        - MmsValue_setUtcTimeMsEx
        - private_IedServer_convertMmsDataAccessErrorToServiceError
        - snprintf
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:740,13'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:743,59'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:743,13'
          Dst:             MmsValue_setUtcTimeMsEx
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:747,31'
          Dst:             private_IedServer_convertMmsDataAccessErrorToServiceError
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:746,13'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:757,9'
          Dst:             snprintf
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:760,13'
          Dst:             IedServer_updateVisibleStringAttributeValue
    - functionName:    private_IedServer_convertMmsDataAccessErrorToServiceError
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 695
      functionLinenumberEnd: 725
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       20
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    5
      BranchProfiles:
        - Branch String:   'src/iec61850/server/mms_mapping/mms_mapping.c:698,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    getSettingGroupBySGCB
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 627
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_getData
        - LinkedList_getNext
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:614,38'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:618,53'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:623,31'
          Dst:             LinkedList_getNext
    - functionName:    mmsReadHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3558
      functionLinenumberEnd: 3695
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          302
      EdgeCount:       63
      CyclomaticComplexity: 19
      functionsReached:
        - Control_readAccessControlObject
        - LIBIEC61850_LOG_SVC_readAccessControlBlock
        - LIBIEC61850_SV_readAccessSampledValueControlBlock
        - LinkedList_getNext
        - MmsMapping_getNextNameElement
        - MmsValue_clone
        - MmsValue_setDeletableRecursive
        - ReportControl_getRCBValue
        - ReportControl_readAccess
        - Semaphore_post
        - Semaphore_wait
        - isControllable
        - isGooseControlBlock
        - isLogControlBlock
        - isReportControlBlock
        - isSampledValueControlBlock
        - memcmp
        - readAccessGooseControlBlock
        - strchr
        - strlen
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3566,23'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3575,9'
          Dst:             isControllable
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3577,20'
          Dst:             Control_readAccessControlObject
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3584,9'
          Dst:             isGooseControlBlock
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3586,20'
          Dst:             readAccessGooseControlBlock
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3593,9'
          Dst:             isSampledValueControlBlock
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3595,20'
          Dst:             LIBIEC61850_SV_readAccessSampledValueControlBlock
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3602,9'
          Dst:             isLogControlBlock
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3604,20'
          Dst:             LIBIEC61850_LOG_SVC_readAccessControlBlock
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3611,9'
          Dst:             isReportControlBlock
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3617,28'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3625,21'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3632,29'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3634,31'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3640,42'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3645,21'
          Dst:             memcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3648,21'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3650,25'
          Dst:             strncmp
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3652,45'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3656,29'
          Dst:             ReportControl_readAccess
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3659,29'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3663,41'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3669,41'
          Dst:             MmsValue_clone
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3670,33'
          Dst:             MmsValue_setDeletableRecursive
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3674,29'
          Dst:             Semaphore_post
    - functionName:    MmsMapping_installHandlers
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4556
      functionLinenumberEnd: 4568
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsServer_installConnectionHandler
        - MmsServer_installGetNameListHandler
        - MmsServer_installListAccessHandler
        - MmsServer_installReadAccessHandler
        - MmsServer_installReadHandler
        - MmsServer_installReadJournalHandler
        - MmsServer_installVariableListAccessHandler
        - MmsServer_installWriteHandler
        - mmsConnectionHandler
        - mmsGetNameListHandler
        - mmsListObjectsAccessHandler
        - mmsReadAccessHandler
        - mmsReadHandler
        - mmsReadJournalHandler
        - mmsWriteHandler
        - variableListAccessHandler
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4557,5'
          Dst:             MmsServer_installReadHandler
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4557,5'
          Dst:             mmsReadHandler
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4558,5'
          Dst:             MmsServer_installWriteHandler
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4558,5'
          Dst:             mmsWriteHandler
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4559,5'
          Dst:             MmsServer_installReadAccessHandler
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4559,5'
          Dst:             mmsReadAccessHandler
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4560,5'
          Dst:             MmsServer_installListAccessHandler
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4560,5'
          Dst:             mmsListObjectsAccessHandler
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4561,5'
          Dst:             MmsServer_installConnectionHandler
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4561,5'
          Dst:             mmsConnectionHandler
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4562,5'
          Dst:             MmsServer_installVariableListAccessHandler
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4562,5'
          Dst:             variableListAccessHandler
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4563,5'
          Dst:             MmsServer_installGetNameListHandler
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4563,5'
          Dst:             mmsGetNameListHandler
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4566,5'
          Dst:             MmsServer_installReadJournalHandler
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:4566,5'
          Dst:             mmsReadJournalHandler
    - functionName:    MmsMapping_setMmsServer
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3700
      functionLinenumberEnd: 3702
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsMapping_installReadAccessHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3480
      functionLinenumberEnd: 3485
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getAccessHandlerForAttribute
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3434
      functionLinenumberEnd: 3448
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_getNext
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3435,26'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3444,19'
          Dst:             LinkedList_getNext
    - functionName:    MmsMapping_installWriteAccessHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3460
      functionLinenumberEnd: 3476
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_add
        - Memory_malloc
        - getAccessHandlerForAttribute
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3461,45'
          Dst:             getAccessHandlerForAttribute
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3465,50'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:3471,13'
          Dst:             LinkedList_add
    - functionName:    MmsMapping_installGlobalWriteAccessHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3452
      functionLinenumberEnd: 3455
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsMapping_getMmsDeviceModel
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2408
      functionLinenumberEnd: 2409
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsMapping_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2321
      functionLinenumberEnd: 2404
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         57
      ICount:          367
      EdgeCount:       75
      CyclomaticComplexity: 20
      functionsReached:
        - ControlObject_destroy
        - IedModel_setAttributeValuesToNull
        - LinkedList_destroy
        - LinkedList_destroyDeep
        - LogControl_destroy
        - LogInstance_destroy
        - Memory_free
        - MmsDevice_destroy
        - MmsGooseControlBlock_destroy
        - MmsSampledValueControlBlock_destroy
        - ReportControl_destroy
        - Semaphore_destroy
        - Thread_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2327,9'
          Dst:             Thread_destroy
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2332,9'
          Dst:             MmsDevice_destroy
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2335,5'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2335,5'
          Dst:             ReportControl_destroy
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2339,5'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2339,5'
          Dst:             MmsGooseControlBlock_destroy
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2341,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2345,5'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2345,5'
          Dst:             MmsSampledValueControlBlock_destroy
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2349,5'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2349,5'
          Dst:             ControlObject_destroy
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2353,5'
          Dst:             LinkedList_destroy
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2358,5'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2358,5'
          Dst:             LogControl_destroy
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2359,5'
          Dst:             LinkedList_destroyDeep
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2359,5'
          Dst:             LogInstance_destroy
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2364,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2366,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2368,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2370,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2372,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2374,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2376,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2378,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2380,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2382,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2384,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2386,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2388,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2390,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2392,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2396,5'
          Dst:             Semaphore_destroy
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2399,5'
          Dst:             LinkedList_destroy
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2401,5'
          Dst:             IedModel_setAttributeValuesToNull
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2403,5'
          Dst:             Memory_free
    - functionName:    createMmsModelFromIedModel
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2211
      functionLinenumberEnd: 2231
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - IedModel_getLogicalDeviceCount
        - MmsDevice_create
        - MmsDevice_destroy
        - createDataSets
        - createMmsDataModel
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2214,17'
          Dst:             MmsDevice_create
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2218,30'
          Dst:             IedModel_getLogicalDeviceCount
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2220,13'
          Dst:             createMmsDataModel
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2222,13'
          Dst:             createDataSets
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2226,13'
          Dst:             MmsDevice_destroy
    - functionName:    MmsMapping_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2236
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          165
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - LinkedList_create
        - LinkedList_getData
        - LinkedList_getNext
        - Memory_calloc
        - MmsMapping_destroy
        - Semaphore_create
        - createMmsModelFromIedModel
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2237,37'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2246,28'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2250,25'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2251,26'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2257,25'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2265,24'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2270,28'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2276,27'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2282,32'
          Dst:             Semaphore_create
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2285,37'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2288,23'
          Dst:             createMmsModelFromIedModel
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2292,9'
          Dst:             MmsMapping_destroy
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2297,29'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2301,49'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:2312,22'
          Dst:             LinkedList_getNext
    - functionName:    MmsMapping_changeActiveSettingGroup
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 884
      functionLinenumberEnd: 906
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          91
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - Hal_getTimeInMs
        - MmsValue_getElement
        - MmsValue_setUint8
        - MmsValue_setUtcTimeMsEx
        - copySGCBValuesToTrackingObject
        - getSettingGroupBySGCB
        - updateGenericTrackingObjectValues
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:885,24'
          Dst:             getSettingGroupBySGCB
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:893,31'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:894,32'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:896,13'
          Dst:             MmsValue_setUint8
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:897,45'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:897,13'
          Dst:             MmsValue_setUtcTimeMsEx
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:900,13'
          Dst:             copySGCBValuesToTrackingObject
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:901,13'
          Dst:             updateGenericTrackingObjectValues
    - functionName:    MmsMapping_setConfirmEditSgHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 872
      functionLinenumberEnd: 880
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - getSettingGroupBySGCB
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:873,24'
          Dst:             getSettingGroupBySGCB
    - functionName:    MmsMapping_setEditSgChangedHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 859
      functionLinenumberEnd: 867
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - getSettingGroupBySGCB
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:860,24'
          Dst:             getSettingGroupBySGCB
    - functionName:    MmsMapping_setSgChangedHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 846
      functionLinenumberEnd: 854
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - getSettingGroupBySGCB
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:847,24'
          Dst:             getSettingGroupBySGCB
    - functionName:    MmsMapping_useIntegratedGoosePublisher
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 837
      functionLinenumberEnd: 841
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsMapping_configureSettingGroups
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 800
      functionLinenumberEnd: 833
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          99
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - LinkedList_getData
        - LinkedList_getNext
        - MmsServer_getValueFromCache
        - MmsValue_getElement
        - MmsValue_setUint16
        - MmsValue_setUint8
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:801,38'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:805,53'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:810,28'
          Dst:             MmsServer_getValueFromCache
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:816,33'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:817,31'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:818,33'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:820,13'
          Dst:             MmsValue_setUint8
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:821,13'
          Dst:             MmsValue_setUint8
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:824,17'
          Dst:             MmsValue_setUint16
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:831,31'
          Dst:             LinkedList_getNext
    - functionName:    MmsMapping_initializeControlObjects
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_mapping.c'
      linkageType:     InternalLinkage
      functionLinenumber: 785
      functionLinenumberEnd: 796
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ControlObject_initialize
        - LinkedList_getData
        - LinkedList_getNext
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:786,26'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:790,56'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:792,9'
          Dst:             ControlObject_initialize
        - Src:             'src/iec61850/server/mms_mapping/mms_mapping.c:794,19'
          Dst:             LinkedList_getNext
    - functionName:    getDataSetEntryWithIndex
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 695
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          42
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    updateWithDefaultRptId
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1201
      functionLinenumberEnd: 1207
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_setVisibleString
        - composeDefaultRptIdString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1204,5'
          Dst:             composeDefaultRptIdString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1206,5'
          Dst:             MmsValue_setVisibleString
    - functionName:    composeDefaultRptIdString
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1171
      functionLinenumberEnd: 1187
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          94
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sendNextReportEntrySegment
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3625
      functionLinenumberEnd: 4294
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         234
      ICount:          1867
      EdgeCount:       309
      CyclomaticComplexity: 77
      functionsReached:
        - BerDecoder_decodeLength
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeStringWithTag
        - BerEncoder_encodeTL
        - IedModel_getModelNodeByShortObjectReference
        - IsoConnection_lock
        - IsoConnection_unlock
        - MemoryAllocator_getAlignedSize
        - MmsServerConnection_getMaxMmsPduSize
        - MmsServerConnection_sendMessage
        - MmsServer_releaseTransmitBuffer
        - MmsServer_reserveTransmitBuffer
        - MmsValue_deleteAllBitStringBits
        - MmsValue_encodeMmsData
        - MmsValue_getBitStringBit
        - MmsValue_getBitStringByteSize
        - MmsValue_getBitStringSize
        - MmsValue_getElement
        - MmsValue_getStringSize
        - MmsValue_setBinaryTime
        - MmsValue_setBitStringBit
        - MmsValue_setOctetString
        - MmsValue_setUint16
        - MmsValue_setUint32
        - MmsValue_setVisibleString
        - MmsValue_toString
        - MmsValue_toUint32
        - ReportControl_getRCBValue
        - ReportControl_unlockNotify
        - Semaphore_post
        - Semaphore_wait
        - getDataSetEntryWithIndex
        - strlen
        - updateWithDefaultRptId
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3636,25'
          Dst:             MmsServerConnection_getMaxMmsPduSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3663,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3666,25'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3670,34'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3671,9'
          Dst:             MmsValue_setOctetString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3681,30'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3683,28'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3685,29'
          Dst:             MmsValue_getStringSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3688,9'
          Dst:             updateWithDefaultRptId
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3692,9'
          Dst:             MmsValue_setVisibleString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3695,25'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3700,9'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3701,9'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3704,25'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3718,48'
          Dst:             MmsValue_getBitStringSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3721,66'
          Dst:             MmsValue_getBitStringByteSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3721,35'
          Dst:             MemoryAllocator_getAlignedSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3724,5'
          Dst:             MmsValue_deleteAllBitStringBits
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3734,5'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3736,23'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3738,9'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3741,29'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3747,9'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3754,9'
          Dst:             MmsValue_setBinaryTime
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3756,29'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3759,24'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3761,9'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3764,29'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3772,13'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3781,33'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3790,13'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3800,33'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3804,9'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3807,29'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3810,25'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3819,30'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3820,27'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3829,30'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3843,36'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3851,50'
          Dst:             getDataSetEntryWithIndex
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3856,62'
          Dst:             IedModel_getModelNodeByShortObjectReference
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3862,49'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3876,49'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3886,42'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3898,36'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3905,35'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3933,25'
          Dst:             MmsValue_setUint32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3938,17'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3950,31'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3969,5'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3976,13'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3976,69'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3981,58'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3984,44'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3985,64'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4003,5'
          Dst:             ReportControl_unlockNotify
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4005,5'
          Dst:             IsoConnection_lock
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4007,32'
          Dst:             MmsServer_reserveTransmitBuffer
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4013,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4014,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4016,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4017,14'
          Dst:             BerEncoder_encodeStringWithTag
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4019,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4023,14'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4024,14'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4027,18'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4030,18'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4033,18'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4036,18'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4039,18'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4042,18'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4046,18'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4047,18'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4050,14'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4053,9'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4055,38'
          Dst:             getDataSetEntryWithIndex
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4063,22'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4071,58'
          Dst:             IedModel_getModelNodeByShortObjectReference
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4077,45'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4091,45'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4101,38'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4113,26'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4132,17'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4140,27'
          Dst:             BerDecoder_decodeLength
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4185,21'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4188,21'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4192,22'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4199,21'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4202,21'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4205,21'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4213,30'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4222,19'
          Dst:             MmsServerConnection_sendMessage
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4224,5'
          Dst:             MmsServer_releaseTransmitBuffer
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4226,5'
          Dst:             IsoConnection_unlock
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4243,33'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4245,9'
          Dst:             MmsValue_setUint32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4273,9'
          Dst:             MmsValue_setUint16
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4282,5'
          Dst:             Semaphore_post
    - functionName:    ReportControl_getRCBValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         92
      ICount:          473
      EdgeCount:       123
      CyclomaticComplexity: 33
      functionsReached:
        - MmsValue_getElement
        - strcmp
      functionUses:    66
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:270,13'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:271,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:272,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:273,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:274,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:275,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:276,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:277,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:278,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:279,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:280,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:281,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:282,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:283,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:284,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:285,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:286,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:287,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:288,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:289,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:290,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:291,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:292,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:293,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:294,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:295,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:302,21'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:303,28'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:304,21'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:305,28'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:309,21'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:310,28'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:320,13'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:321,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:322,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:323,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:324,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:325,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:326,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:327,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:328,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:329,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:330,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:331,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:332,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:333,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:334,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:335,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:336,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:337,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:338,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:339,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:340,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:341,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:342,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:343,20'
          Dst:             MmsValue_getElement
    - functionName:    ReportControl_unlockNotify
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:170,5'
          Dst:             Semaphore_post
    - functionName:    removeAllGIReportsFromReportBuffer
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3095
      functionLinenumberEnd: 3144
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         25
      ICount:          146
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    updateTimeOfEntry
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 674
      functionLinenumberEnd: 677
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_setBinaryTime
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:676,5'
          Dst:             MmsValue_setBinaryTime
    - functionName:    enqueueReport
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3148
      functionLinenumberEnd: 3616
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - bool
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         149
      ICount:          1214
      EdgeCount:       196
      CyclomaticComplexity: 49
      functionsReached:
        - Hal_getTimeInMs
        - MemoryAllocator_getAlignedSize
        - MmsValue_encodeMmsData
        - MmsValue_getBitStringByteSize
        - MmsValue_getBitStringSize
        - MmsValue_getElement
        - MmsValue_setBitStringBit
        - MmsValue_setOctetString
        - Semaphore_post
        - Semaphore_wait
        - clearInclusionFlags
        - memcpyReverseByteOrder
        - removeAllGIReportsFromReportBuffer
        - updateTimeOfEntry
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3157,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3163,38'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3163,5'
          Dst:             updateTimeOfEntry
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3165,34'
          Dst:             MmsValue_getBitStringSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3168,27'
          Dst:             MemoryAllocator_getAlignedSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3171,40'
          Dst:             MmsValue_getBitStringByteSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3171,9'
          Dst:             MemoryAllocator_getAlignedSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3196,31'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3204,31'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3213,13'
          Dst:             MemoryAllocator_getAlignedSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3232,35'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3238,28'
          Dst:             MemoryAllocator_getAlignedSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3257,13'
          Dst:             removeAllGIReportsFromReportBuffer
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3470,9'
          Dst:             memcpyReverseByteOrder
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3484,13'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3487,38'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3488,13'
          Dst:             MmsValue_setOctetString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3491,13'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3507,20'
          Dst:             MemoryAllocator_getAlignedSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3524,32'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3532,32'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3557,17'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3561,32'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3577,5'
          Dst:             clearInclusionFlags
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3596,5'
          Dst:             Semaphore_post
    - functionName:    clearInclusionFlags
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 666
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          36
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    createDataSetValuesShadowBuffer
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 699
      functionLinenumberEnd: 719
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          75
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - DataSet_getSize
        - Memory_calloc
        - Memory_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:700,23'
          Dst:             DataSet_getSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:702,44'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:706,39'
          Dst:             Memory_malloc
    - functionName:    checkIfClientHasAccessToDataSetEntries
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 724
      functionLinenumberEnd: 762
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          101
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - LinkedList_getData
        - LinkedList_getNext
        - MmsValue_deleteConditional
        - MmsValue_getType
        - mmsServer_getValue
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:729,32'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:733,74'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:736,17'
          Dst:             mmsServer_getValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:740,21'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:745,17'
          Dst:             MmsValue_deleteConditional
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:758,25'
          Dst:             LinkedList_getNext
    - functionName:    convertIPv4AddressStringToByteArray
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1669
      functionLinenumberEnd: 1692
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          85
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - atoi
        - strchr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1676,22'
          Dst:             atoi
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1680,21'
          Dst:             strchr
    - functionName:    createTrgOps
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1057
      functionLinenumberEnd: 1073
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          102
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - MmsValue_newBitString
        - MmsValue_setBitStringBit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1058,24'
          Dst:             MmsValue_newBitString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1063,9'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1065,9'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1067,9'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1069,9'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1071,9'
          Dst:             MmsValue_setBitStringBit
    - functionName:    createOptFlds
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1031
      functionLinenumberEnd: 1052
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         27
      ICount:          150
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - MmsValue_newBitString
        - MmsValue_setBitStringBit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1032,25'
          Dst:             MmsValue_newBitString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1036,9'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1038,9'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1040,9'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1042,9'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1044,9'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1046,9'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1048,9'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1050,9'
          Dst:             MmsValue_setBitStringBit
    - functionName:    createDataSetReferenceForDefaultDataSet
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1018
      functionLinenumberEnd: 1026
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsDomain_getName
        - StringUtils_createString
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1021,24'
          Dst:             MmsDomain_getName
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1024,24'
          Dst:             StringUtils_createString
    - functionName:    createDefaultRptId
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1191
      functionLinenumberEnd: 1196
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_newVisibleString
        - composeDefaultRptIdString
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1194,5'
          Dst:             composeDefaultRptIdString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1196,12'
          Dst:             MmsValue_newVisibleString
    - functionName:    ReportControlBlock_getOwner
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4989
      functionLinenumberEnd: 5018
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          65
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_clone
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4998,13'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:5001,36'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:5003,40'
          Dst:             MmsValue_clone
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:5006,13'
          Dst:             Semaphore_post
    - functionName:    ReportControlBlock_getResv
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4961
      functionLinenumberEnd: 4984
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_getBoolean
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4969,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4972,31'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4976,20'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4980,9'
          Dst:             Semaphore_post
    - functionName:    ReportControlBlock_getResvTms
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4933
      functionLinenumberEnd: 4956
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_toInt32
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4941,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4944,34'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4948,32'
          Dst:             MmsValue_toInt32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4952,9'
          Dst:             Semaphore_post
    - functionName:    ReportControlBlock_getTimeofEntry
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4905
      functionLinenumberEnd: 4928
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_getBinaryTimeAsUtcMs
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4913,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4916,38'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4920,27'
          Dst:             MmsValue_getBinaryTimeAsUtcMs
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4924,9'
          Dst:             Semaphore_post
    - functionName:    ReportControlBlock_getEntryId
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4880
      functionLinenumberEnd: 4900
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_clone
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4888,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4891,34'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4893,19'
          Dst:             MmsValue_clone
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4896,9'
          Dst:             Semaphore_post
    - functionName:    ReportControlBlock_getPurgeBuf
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4852
      functionLinenumberEnd: 4875
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_getBoolean
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4860,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4863,35'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4867,24'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4871,9'
          Dst:             Semaphore_post
    - functionName:    ReportControlBlock_getGI
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4825
      functionLinenumberEnd: 4848
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_getBoolean
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4831,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4834,29'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4836,19'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4839,9'
          Dst:             Semaphore_post
    - functionName:    ReportControlBlock_getIntgPd
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4810
      functionLinenumberEnd: 4821
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ReportControlBlock_getTrgOps
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4795
      functionLinenumberEnd: 4806
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          38
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ReportControlBlock_getSqNum
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4768
      functionLinenumberEnd: 4791
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_toUint32
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4774,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4777,32'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4779,36'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4782,9'
          Dst:             Semaphore_post
    - functionName:    ReportControlBlock_getBufTm
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4741
      functionLinenumberEnd: 4764
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_toUint32
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4747,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4750,32'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4752,26'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4755,9'
          Dst:             Semaphore_post
    - functionName:    ReportControlBlock_getOptFlds
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4714
      functionLinenumberEnd: 4737
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_getBitStringAsInteger
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4720,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4723,34'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4725,28'
          Dst:             MmsValue_getBitStringAsInteger
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4728,9'
          Dst:             Semaphore_post
    - functionName:    ReportControlBlock_getConfRev
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4687
      functionLinenumberEnd: 4710
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_toUint32
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4693,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4696,34'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4698,28'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4701,9'
          Dst:             Semaphore_post
    - functionName:    ReportControlBlock_getDataSet
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4660
      functionLinenumberEnd: 4683
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_toString
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4666,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4669,34'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4671,35'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4671,28'
          Dst:             strdup
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4674,9'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4681,16'
          Dst:             strdup
    - functionName:    ReportControlBlock_getRptID
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4633
      functionLinenumberEnd: 4656
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_toString
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4639,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4642,32'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4644,33'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4644,26'
          Dst:             strdup
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4647,9'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4654,16'
          Dst:             strdup
    - functionName:    ReportControlBlock_getRptEna
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4618
      functionLinenumberEnd: 4629
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          35
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    copySingleValueToReportBuffer
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4520
      functionLinenumberEnd: 4525
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_clone
        - MmsValue_update
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4522,58'
          Dst:             MmsValue_clone
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4524,9'
          Dst:             MmsValue_update
    - functionName:    ReportControl_valueUpdated
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4573
      functionLinenumberEnd: 4614
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          137
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - Hal_getMonotonicTimeInMs
        - Hal_getTimeInMs
        - MmsValue_setBinaryTime
        - ReportControl_lockNotify
        - ReportControl_unlockNotify
        - copySingleValueToReportBuffer
        - copyValuesToReportBuffer
        - processEventsForReport
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4574,5'
          Dst:             ReportControl_lockNotify
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4579,28'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4584,13'
          Dst:             copyValuesToReportBuffer
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4587,38'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4587,9'
          Dst:             processEventsForReport
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4601,9'
          Dst:             copySingleValueToReportBuffer
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4606,51'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4606,9'
          Dst:             MmsValue_setBinaryTime
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4608,28'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4613,5'
          Dst:             ReportControl_unlockNotify
    - functionName:    ReportControl_lockNotify
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_wait
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:162,5'
          Dst:             Semaphore_wait
    - functionName:    copyValuesToReportBuffer
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4529
      functionLinenumberEnd: 4541
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          70
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - copySingleValueToReportBuffer
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4535,13'
          Dst:             copySingleValueToReportBuffer
    - functionName:    processEventsForReport
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4369
      functionLinenumberEnd: 4460
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         57
      ICount:          341
      EdgeCount:       75
      CyclomaticComplexity: 20
      functionsReached:
        - Hal_getMonotonicTimeInMs
        - enqueueReport
        - getNextRoundedStartTime
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4380,21'
          Dst:             enqueueReport
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4383,17'
          Dst:             enqueueReport
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4400,25'
          Dst:             enqueueReport
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4406,50'
          Dst:             getNextRoundedStartTime
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4419,54'
          Dst:             getNextRoundedStartTime
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4427,21'
          Dst:             enqueueReport
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4439,54'
          Dst:             getNextRoundedStartTime
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4452,17'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4454,17'
          Dst:             enqueueReport
    - functionName:    getNextRoundedStartTime
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1107
      functionLinenumberEnd: 1118
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          38
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Reporting_processReportEventsAfterUnlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4546
      functionLinenumberEnd: 4569
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          81
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - Hal_getTimeInMs
        - LinkedList_getNext
        - ReportControl_lockNotify
        - ReportControl_unlockNotify
        - copyValuesToReportBuffer
        - processEventsForReport
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4549,28'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4551,23'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4555,9'
          Dst:             ReportControl_lockNotify
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4561,17'
          Dst:             copyValuesToReportBuffer
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4563,17'
          Dst:             processEventsForReport
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4567,9'
          Dst:             ReportControl_unlockNotify
    - functionName:    sendNextReportEntry
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4298
      functionLinenumberEnd: 4338
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          101
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - Semaphore_post
        - Semaphore_wait
        - sendNextReportEntrySegment
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4300,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4315,26'
          Dst:             sendNextReportEntrySegment
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4336,5'
          Dst:             Semaphore_post
    - functionName:    Reporting_sendReports
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4495
      functionLinenumberEnd: 4516
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          66
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - LinkedList_getData
        - LinkedList_getNext
        - ReportControl_lockNotify
        - ReportControl_unlockNotify
        - sendNextReportEntry
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4496,26'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4500,45'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4504,13'
          Dst:             ReportControl_lockNotify
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4508,17'
          Dst:             sendNextReportEntry
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4511,13'
          Dst:             ReportControl_unlockNotify
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4514,19'
          Dst:             LinkedList_getNext
    - functionName:    Reporting_processReportEvents
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4464
      functionLinenumberEnd: 4488
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_getNext
        - ReportControl_lockNotify
        - ReportControl_unlockNotify
        - Semaphore_post
        - Semaphore_wait
        - processEventsForReport
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4466,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4473,27'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4477,13'
          Dst:             ReportControl_lockNotify
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4479,13'
          Dst:             processEventsForReport
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4481,13'
          Dst:             ReportControl_unlockNotify
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4486,5'
          Dst:             Semaphore_post
    - functionName:    Reporting_activateBufferedReports
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4342
      functionLinenumberEnd: 4365
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - LinkedList_getNext
        - Semaphore_post
        - Semaphore_wait
        - updateReportDataset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4345,23'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4352,13'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4355,17'
          Dst:             updateReportDataset
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:4361,13'
          Dst:             Semaphore_post
    - functionName:    updateReportDataset
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 767
      functionLinenumberEnd: 1013
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         129
      ICount:          674
      EdgeCount:       174
      CyclomaticComplexity: 47
      functionsReached:
        - IedModel_getDeviceByInst
        - IedModel_lookupDataSet
        - Memory_calloc
        - Memory_free
        - MmsDevice_getDomain
        - MmsDevice_getNamedVariableListWithName
        - MmsDomain_getNamedVariableList
        - MmsMapping_createDataSetByNamedVariableList
        - MmsMapping_freeDynamicallyCreatedDataSet
        - MmsMapping_getDomainSpecificDataSet
        - MmsMapping_getMmsDomainFromObjectReference
        - MmsServerConnection_getNamedVariableList
        - MmsValue_delete
        - MmsValue_newBitString
        - MmsValue_toString
        - ReportControl_getRCBValue
        - StringUtils_appendString
        - StringUtils_concatString
        - StringUtils_copyStringMax
        - checkIfClientHasAccessToDataSetEntries
        - createDataSetValuesShadowBuffer
        - deleteDataSetValuesShadowBuffer
        - purgeBuf
        - strcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:776,20'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:776,13'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:786,21'
          Dst:             purgeBuf
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:790,17'
          Dst:             deleteDataSetValuesShadowBuffer
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:796,25'
          Dst:             MmsMapping_freeDynamicallyCreatedDataSet
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:808,24'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:817,38'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:821,46'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:828,46'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:841,37'
          Dst:             IedModel_getDeviceByInst
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:851,21'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:855,21'
          Dst:             StringUtils_concatString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:858,17'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:859,17'
          Dst:             StringUtils_appendString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:861,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:871,17'
          Dst:             purgeBuf
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:877,35'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:879,28'
          Dst:             IedModel_lookupDataSet
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:885,13'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:887,35'
          Dst:             MmsDevice_getDomain
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:891,58'
          Dst:             MmsDomain_getNamedVariableList
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:895,25'
          Dst:             checkIfClientHasAccessToDataSetEntries
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:906,23'
          Dst:             MmsMapping_getDomainSpecificDataSet
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:918,33'
          Dst:             MmsServerConnection_getNamedVariableList
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:922,37'
          Dst:             checkIfClientHasAccessToDataSetEntries
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:928,43'
          Dst:             MmsMapping_createDataSetByNamedVariableList
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:938,25'
          Dst:             MmsDevice_getNamedVariableListWithName
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:942,29'
          Dst:             checkIfClientHasAccessToDataSetEntries
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:947,35'
          Dst:             MmsMapping_createDataSetByNamedVariableList
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:972,13'
          Dst:             deleteDataSetValuesShadowBuffer
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:978,21'
          Dst:             MmsMapping_freeDynamicallyCreatedDataSet
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:984,13'
          Dst:             createDataSetValuesShadowBuffer
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:987,17'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:989,34'
          Dst:             MmsValue_newBitString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:994,17'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:996,44'
          Dst:             Memory_calloc
    - functionName:    purgeBuf
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          26
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    deleteDataSetValuesShadowBuffer
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          94
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - DataSet_getSize
        - Memory_free
        - MmsValue_delete
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:198,27'
          Dst:             DataSet_getSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:205,17'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:208,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:211,13'
          Dst:             Memory_free
    - functionName:    Reporting_deactivateReportsForConnection
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3024
      functionLinenumberEnd: 3038
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_getData
        - LinkedList_getNext
        - Reporting_disableReportControlInstance
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3025,25'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3029,45'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3033,13'
          Dst:             Reporting_disableReportControlInstance
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3036,18'
          Dst:             LinkedList_getNext
    - functionName:    Reporting_disableReportControlInstance
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2928
      functionLinenumberEnd: 3005
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          227
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - Hal_getMonotonicTimeInMs
        - MmsValue_setBoolean
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
        - copyRCBValuesToTrackingObject
        - private_IedServer_getClientConnectionByHandle
        - purgeBuf
        - updateGenericTrackingObjectValues
        - updateOwner
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2934,17'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2945,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2948,24'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2949,5'
          Dst:             MmsValue_setBoolean
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2952,5'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2962,17'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2974,13'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2977,30'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2978,13'
          Dst:             MmsValue_setBoolean
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2981,13'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2986,13'
          Dst:             updateOwner
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2989,9'
          Dst:             purgeBuf
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2994,13'
          Dst:             updateOwner
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2997,38'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3002,5'
          Dst:             copyRCBValuesToTrackingObject
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3003,5'
          Dst:             updateGenericTrackingObjectValues
    - functionName:    updateOwner
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1696
      functionLinenumberEnd: 1778
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         32
      ICount:          189
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - MmsServerConnection_getClientAddress
        - MmsValue_setOctetString
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
        - StringUtils_convertIPv6AdddressStringToByteArray
        - convertIPv4AddressStringToByteArray
        - strchr
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1700,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1705,27'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1711,45'
          Dst:             MmsServerConnection_getClientAddress
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1716,21'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1723,34'
          Dst:             convertIPv4AddressStringToByteArray
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1726,25'
          Dst:             MmsValue_setOctetString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1728,25'
          Dst:             MmsValue_setOctetString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1734,34'
          Dst:             StringUtils_convertIPv6AdddressStringToByteArray
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1741,25'
          Dst:             MmsValue_setOctetString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1748,25'
          Dst:             MmsValue_setOctetString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1757,21'
          Dst:             MmsValue_setOctetString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1764,25'
          Dst:             MmsValue_setOctetString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1768,25'
          Dst:             MmsValue_setOctetString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1776,5'
          Dst:             Semaphore_post
    - functionName:    copyRCBValuesToTrackingObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 485
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         99
      ICount:          643
      EdgeCount:       131
      CyclomaticComplexity: 34
      functionsReached:
        - MmsValue_setVisibleString
        - MmsValue_toString
        - MmsValue_update
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
        - StringUtils_copyStringMax
        - StringUtils_replace
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:355,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:365,59'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:365,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:368,60'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:368,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:373,59'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:373,41'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:377,21'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:379,21'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:381,21'
          Dst:             MmsValue_setVisibleString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:386,61'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:386,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:389,61'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:389,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:392,59'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:392,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:395,59'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:395,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:398,60'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:398,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:401,60'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:401,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:404,56'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:404,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:407,62'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:407,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:410,61'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:410,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:414,46'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:417,21'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:422,42'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:425,21'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:436,59'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:436,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:439,60'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:439,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:442,60'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:442,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:447,59'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:447,41'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:451,21'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:453,21'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:455,21'
          Dst:             MmsValue_setVisibleString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:460,61'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:460,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:463,61'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:463,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:466,59'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:466,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:469,59'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:469,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:472,60'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:472,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:475,60'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:475,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:478,56'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:478,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:483,5'
          Dst:             Semaphore_post
    - functionName:    updateGenericTrackingObjectValues
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 660
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          242
      EdgeCount:       48
      CyclomaticComplexity: 13
      functionsReached:
        - Hal_getTimeInMs
        - IedServer_updateVisibleStringAttributeValue
        - MmsValue_setInt32
        - MmsValue_setUtcTimeMsEx
        - private_IedServer_convertMmsDataAccessErrorToServiceError
        - snprintf
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:617,13'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:620,59'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:620,13'
          Dst:             MmsValue_setUtcTimeMsEx
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:624,31'
          Dst:             private_IedServer_convertMmsDataAccessErrorToServiceError
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:623,13'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:634,9'
          Dst:             snprintf
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:657,13'
          Dst:             IedServer_updateVisibleStringAttributeValue
    - functionName:    Reporting_deactivateAllReports
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3009
      functionLinenumberEnd: 3020
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_getData
        - LinkedList_getNext
        - Reporting_disableReportControlInstance
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3010,25'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3014,45'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3016,9'
          Dst:             Reporting_disableReportControlInstance
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:3018,18'
          Dst:             LinkedList_getNext
    - functionName:    updateSingleTrackingValue
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 489
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         99
      ICount:          490
      EdgeCount:       131
      CyclomaticComplexity: 34
      functionsReached:
        - MmsValue_setVisibleString
        - MmsValue_toString
        - MmsValue_update
        - StringUtils_copyStringMax
        - StringUtils_replace
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:498,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:500,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:502,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:506,41'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:510,21'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:512,21'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:514,21'
          Dst:             MmsValue_setVisibleString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:517,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:519,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:521,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:523,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:525,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:527,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:529,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:531,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:533,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:535,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:537,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:541,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:552,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:554,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:556,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:558,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:561,41'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:565,21'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:567,21'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:569,21'
          Dst:             MmsValue_setVisibleString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:572,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:574,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:576,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:578,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:580,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:582,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:584,23'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:588,17'
          Dst:             MmsValue_update
    - functionName:    checkReportBufferForEntryID
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1800
      functionLinenumberEnd: 1821
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1807,13'
          Dst:             memcmp
    - functionName:    checkForZeroEntryID
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1782
      functionLinenumberEnd: 1796
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_getOctetStringBuffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1783,23'
          Dst:             MmsValue_getOctetStringBuffer
    - functionName:    increaseConfRev
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1826
      functionLinenumberEnd: 1837
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_setUint32
        - MmsValue_toUint32
        - ReportControl_getRCBValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1827,30'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1829,24'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1836,5'
          Dst:             MmsValue_setUint32
    - functionName:    refreshIntegrityPeriod
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1123
      functionLinenumberEnd: 1152
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          99
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - Hal_getTimeInMs
        - MmsValue_toUint32
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
        - getNextRoundedStartTime
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1125,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1128,24'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1129,18'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1132,5'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1143,70'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1143,46'
          Dst:             getNextRoundedStartTime
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1147,46'
          Dst:             Hal_getTimeInMs
    - functionName:    refreshTriggerOptions
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1078
      functionLinenumberEnd: 1103
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          108
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - MmsValue_getBitStringBit
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1080,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1084,24'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1085,9'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1088,9'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1091,9'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1094,9'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1097,9'
          Dst:             MmsValue_getBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1101,5'
          Dst:             Semaphore_post
    - functionName:    refreshBufferTime
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1156
      functionLinenumberEnd: 1167
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_toUint32
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1158,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1161,23'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1162,17'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1165,5'
          Dst:             Semaphore_post
    - functionName:    reserveRcb
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2005
      functionLinenumberEnd: 2036
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          90
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - MmsValue_setBoolean
        - MmsValue_setInt16
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
        - updateOwner
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2010,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2018,36'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2020,17'
          Dst:             MmsValue_setInt16
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2026,29'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2028,13'
          Dst:             MmsValue_setBoolean
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2032,5'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2035,5'
          Dst:             updateOwner
    - functionName:    isIpAddressMatchingWithOwner
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1945
      functionLinenumberEnd: 2000
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          107
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - MmsValue_getOctetStringBuffer
        - MmsValue_getOctetStringSize
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
        - StringUtils_convertIPv6AdddressStringToByteArray
        - convertIPv4AddressStringToByteArray
        - memcmp
        - strchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1949,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1952,23'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1956,13'
          Dst:             MmsValue_getOctetStringSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1962,13'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1966,17'
          Dst:             convertIPv4AddressStringToByteArray
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1968,38'
          Dst:             MmsValue_getOctetStringBuffer
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1968,21'
          Dst:             memcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1979,17'
          Dst:             StringUtils_convertIPv6AdddressStringToByteArray
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1981,38'
          Dst:             MmsValue_getOctetStringBuffer
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1981,21'
          Dst:             memcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1997,5'
          Dst:             Semaphore_post
    - functionName:    Reporting_RCBWriteAccessHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2041
      functionLinenumberEnd: 2923
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         343
      ICount:          2171
      EdgeCount:       463
      CyclomaticComplexity: 122
      functionsReached:
        - Hal_getMonotonicTimeInMs
        - Hal_getTimeInMs
        - MmsServerConnection_getClientAddress
        - MmsValue_equals
        - MmsValue_getBoolean
        - MmsValue_getOctetStringSize
        - MmsValue_getStringSize
        - MmsValue_getType
        - MmsValue_setUint32
        - MmsValue_toInt32
        - MmsValue_update
        - ReportControl_getRCBValue
        - ReportControl_lockNotify
        - ReportControl_unlockNotify
        - Semaphore_post
        - Semaphore_wait
        - checkForZeroEntryID
        - checkReportBufferForEntryID
        - checkReservationTimeout
        - clearInclusionFlags
        - copyRCBValuesToTrackingObject
        - getNextRoundedStartTime
        - increaseConfRev
        - isIpAddressMatchingWithOwner
        - private_IedServer_getClientConnectionByHandle
        - purgeBuf
        - refreshBufferTime
        - refreshIntegrityPeriod
        - refreshTriggerOptions
        - reserveRcb
        - strcmp
        - updateGenericTrackingObjectValues
        - updateOwner
        - updateReportDataset
        - updateSingleTrackingValue
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2047,41'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2075,9'
          Dst:             checkReservationTimeout
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2121,54'
          Dst:             MmsServerConnection_getClientAddress
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2121,21'
          Dst:             isIpAddressMatchingWithOwner
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2125,46'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2143,46'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2149,5'
          Dst:             ReportControl_lockNotify
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2156,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2156,51'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2187,9'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2201,17'
          Dst:             updateReportDataset
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2207,21'
          Dst:             reserveRcb
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2216,17'
          Dst:             updateOwner
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2219,17'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2222,36'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2223,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2226,17'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2243,17'
          Dst:             refreshBufferTime
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2244,17'
          Dst:             refreshTriggerOptions
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2245,17'
          Dst:             refreshIntegrityPeriod
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2250,17'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2253,35'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2255,17'
          Dst:             MmsValue_setUint32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2258,17'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2301,21'
          Dst:             clearInclusionFlags
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2304,17'
          Dst:             purgeBuf
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2323,9'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2327,17'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2360,13'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2374,17'
          Dst:             updateOwner
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2379,17'
          Dst:             updateOwner
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2392,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2394,17'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2396,21'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2398,21'
          Dst:             purgeBuf
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2411,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2420,13'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2423,32'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2425,18'
          Dst:             MmsValue_equals
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2427,21'
          Dst:             updateReportDataset
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2429,21'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2431,21'
          Dst:             increaseConfRev
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2434,21'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2439,25'
          Dst:             purgeBuf
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2451,21'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2462,17'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2469,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2478,13'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2481,32'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2483,18'
          Dst:             MmsValue_equals
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2485,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2488,17'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2491,17'
          Dst:             refreshIntegrityPeriod
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2501,82'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2501,58'
          Dst:             getNextRoundedStartTime
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2510,21'
          Dst:             purgeBuf
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2522,17'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2528,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2537,13'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2540,32'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2542,18'
          Dst:             MmsValue_equals
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2544,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2547,17'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2552,21'
          Dst:             purgeBuf
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2561,17'
          Dst:             refreshTriggerOptions
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2566,17'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2572,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2574,17'
          Dst:             MmsValue_getOctetStringSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2581,17'
          Dst:             checkForZeroEntryID
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2583,22'
          Dst:             checkReportBufferForEntryID
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2602,13'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2604,33'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2605,13'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2608,13'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2614,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2623,13'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2626,31'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2628,18'
          Dst:             MmsValue_equals
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2630,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2633,17'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2638,21'
          Dst:             purgeBuf
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2647,17'
          Dst:             refreshBufferTime
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2652,17'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2658,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2666,17'
          Dst:             MmsValue_getStringSize
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2673,13'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2676,31'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2678,18'
          Dst:             MmsValue_equals
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2680,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2683,17'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2688,21'
          Dst:             purgeBuf
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2700,17'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2706,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2714,35'
          Dst:             MmsValue_toInt32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2724,29'
          Dst:             updateOwner
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2734,54'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2736,29'
          Dst:             reserveRcb
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2745,48'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2748,29'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2763,50'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2765,25'
          Dst:             reserveRcb
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2778,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2784,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2790,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2796,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2802,18'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2813,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2816,30'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2822,17'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2826,13'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2832,13'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2853,38'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2861,21'
          Dst:             reserveRcb
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2874,21'
          Dst:             reserveRcb
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2888,17'
          Dst:             reserveRcb
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2901,5'
          Dst:             copyRCBValuesToTrackingObject
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2902,5'
          Dst:             updateSingleTrackingValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2906,5'
          Dst:             ReportControl_unlockNotify
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2912,9'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:2914,9'
          Dst:             updateGenericTrackingObjectValues
    - functionName:    checkReservationTimeout
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1841
      functionLinenumberEnd: 1891
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          167
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - Hal_getMonotonicTimeInMs
        - MmsValue_setInt16
        - ReportControl_getRCBValue
        - Semaphore_post
        - Semaphore_wait
        - copyRCBValuesToTrackingObject
        - private_IedServer_getClientConnectionByHandle
        - updateGenericTrackingObjectValues
        - updateOwner
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1846,17'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1858,21'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1860,44'
          Dst:             ReportControl_getRCBValue
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1862,25'
          Dst:             MmsValue_setInt16
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1865,21'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1871,17'
          Dst:             updateOwner
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1875,17'
          Dst:             copyRCBValuesToTrackingObject
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1876,17'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1883,25'
          Dst:             private_IedServer_getClientConnectionByHandle
    - functionName:    ReportControl_readAccess
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1895
      functionLinenumberEnd: 1940
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          173
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - checkReservationTimeout
        - private_IedServer_getClientConnectionByHandle
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1902,9'
          Dst:             checkReservationTimeout
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1909,28'
          Dst:             private_IedServer_getClientConnectionByHandle
    - functionName:    createUnbufferedReportControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1211
      functionLinenumberEnd: 1361
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         32
      ICount:          588
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - Memory_calloc
        - Memory_free
        - MmsValue_newBinaryTime
        - MmsValue_newBoolean
        - MmsValue_newOctetString
        - MmsValue_newUnsigned
        - MmsValue_newUnsignedFromUint32
        - MmsValue_newVisibleString
        - MmsValue_setBoolean
        - MmsValue_setOctetString
        - StringUtils_copyString
        - createDataSetReferenceForDefaultDataSet
        - createDefaultRptId
        - createOptFlds
        - createTrgOps
        - refreshBufferTime
        - refreshIntegrityPeriod
        - refreshTriggerOptions
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1212,64'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1213,17'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1216,37'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1229,56'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1234,37'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1237,36'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1238,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1242,49'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1243,51'
          Dst:             MmsValue_newVisibleString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1245,51'
          Dst:             createDefaultRptId
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1247,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1248,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1251,47'
          Dst:             MmsValue_newBoolean
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1253,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1254,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1257,47'
          Dst:             MmsValue_newBoolean
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1259,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1260,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1267,34'
          Dst:             createDataSetReferenceForDefaultDataSet
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1268,51'
          Dst:             MmsValue_newVisibleString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1269,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1272,51'
          Dst:             MmsValue_newVisibleString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1274,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1275,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1279,47'
          Dst:             MmsValue_newUnsignedFromUint32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1281,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1282,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1286,47'
          Dst:             createOptFlds
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1288,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1289,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1293,47'
          Dst:             MmsValue_newUnsignedFromUint32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1295,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1296,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1300,47'
          Dst:             MmsValue_newUnsigned
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1302,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1303,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1307,47'
          Dst:             createTrgOps
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1309,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1310,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1314,47'
          Dst:             MmsValue_newUnsignedFromUint32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1316,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1317,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1320,48'
          Dst:             MmsValue_newBoolean
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1324,52'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1325,31'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1330,13'
          Dst:             MmsValue_newOctetString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1336,13'
          Dst:             MmsValue_setOctetString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1342,13'
          Dst:             MmsValue_setOctetString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1350,9'
          Dst:             MmsValue_setBoolean
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1355,34'
          Dst:             MmsValue_newBinaryTime
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1357,5'
          Dst:             refreshBufferTime
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1358,5'
          Dst:             refreshIntegrityPeriod
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1359,5'
          Dst:             refreshTriggerOptions
    - functionName:    Reporting_createMmsUnbufferedRCBs
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1629
      functionLinenumberEnd: 1664
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          121
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_add
        - Memory_calloc
        - ReportControl_create
        - StringUtils_copyString
        - StringUtils_createString
        - createUnbufferedReportControlBlock
        - getRCBForLogicalNodeWithIndex
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1631,36'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1632,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1637,37'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1644,13'
          Dst:             ReportControl_create
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1648,50'
          Dst:             getRCBForLogicalNodeWithIndex
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1652,20'
          Dst:             StringUtils_createString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1657,13'
          Dst:             createUnbufferedReportControlBlock
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1659,9'
          Dst:             LinkedList_add
    - functionName:    ReportControl_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - bool
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          147
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_malloc
        - MmsValue_newUnsigned
        - ReportBuffer_create
        - Semaphore_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:105,43'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:115,31'
          Dst:             Semaphore_create
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:118,27'
          Dst:             MmsValue_newUnsigned
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:142,42'
          Dst:             Semaphore_create
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:152,30'
          Dst:             ReportBuffer_create
    - functionName:    getRCBForLogicalNodeWithIndex
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1563
      functionLinenumberEnd: 1585
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          82
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ReportBuffer_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_free
        - Memory_malloc
        - Semaphore_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:58,41'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:69,39'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:73,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:79,26'
          Dst:             Semaphore_create
    - functionName:    createBufferedReportControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1366
      functionLinenumberEnd: 1558
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         39
      ICount:          732
      EdgeCount:       51
      CyclomaticComplexity: 14
      functionsReached:
        - Memory_calloc
        - Memory_free
        - MmsValue_newBinaryTime
        - MmsValue_newBoolean
        - MmsValue_newInteger
        - MmsValue_newOctetString
        - MmsValue_newUnsigned
        - MmsValue_newUnsignedFromUint32
        - MmsValue_newVisibleString
        - MmsValue_setInt16
        - MmsValue_setOctetString
        - StringUtils_copyString
        - createDataSetReferenceForDefaultDataSet
        - createDefaultRptId
        - createOptFlds
        - createTrgOps
        - refreshBufferTime
        - refreshIntegrityPeriod
        - refreshTriggerOptions
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1367,64'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1368,17'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1385,37'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1389,56'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1393,37'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1396,36'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1397,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1402,49'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1403,51'
          Dst:             MmsValue_newVisibleString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1405,51'
          Dst:             createDefaultRptId
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1407,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1408,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1411,47'
          Dst:             MmsValue_newBoolean
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1413,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1414,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1421,34'
          Dst:             createDataSetReferenceForDefaultDataSet
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1423,51'
          Dst:             MmsValue_newVisibleString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1424,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1427,51'
          Dst:             MmsValue_newVisibleString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1429,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1430,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1434,47'
          Dst:             MmsValue_newUnsignedFromUint32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1436,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1437,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1441,47'
          Dst:             createOptFlds
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1443,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1444,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1448,47'
          Dst:             MmsValue_newUnsignedFromUint32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1450,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1451,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1455,47'
          Dst:             MmsValue_newUnsigned
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1457,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1458,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1462,47'
          Dst:             createTrgOps
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1464,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1465,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1469,47'
          Dst:             MmsValue_newUnsignedFromUint32
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1471,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1472,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1475,47'
          Dst:             MmsValue_newBoolean
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1477,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1478,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1481,48'
          Dst:             MmsValue_newBoolean
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1483,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1484,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1488,48'
          Dst:             MmsValue_newOctetString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1490,48'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1491,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1495,48'
          Dst:             MmsValue_newBinaryTime
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1508,56'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1509,35'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1513,66'
          Dst:             MmsValue_newInteger
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1520,56'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1521,35'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1526,17'
          Dst:             MmsValue_newOctetString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1532,17'
          Dst:             MmsValue_setOctetString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1538,17'
          Dst:             MmsValue_setOctetString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1546,13'
          Dst:             MmsValue_setInt16
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1554,5'
          Dst:             refreshBufferTime
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1555,5'
          Dst:             refreshIntegrityPeriod
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1556,5'
          Dst:             refreshTriggerOptions
    - functionName:    Reporting_createMmsBufferedRCBs
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1589
      functionLinenumberEnd: 1624
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          121
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_add
        - Memory_calloc
        - ReportControl_create
        - StringUtils_copyString
        - StringUtils_createString
        - createBufferedReportControlBlock
        - getRCBForLogicalNodeWithIndex
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1591,36'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1592,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1597,37'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1604,13'
          Dst:             ReportControl_create
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1608,50'
          Dst:             getRCBForLogicalNodeWithIndex
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1612,20'
          Dst:             StringUtils_createString
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1617,13'
          Dst:             createBufferedReportControlBlock
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:1619,9'
          Dst:             LinkedList_add
    - functionName:    ReportBuffer_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
        - Semaphore_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:92,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:95,9'
          Dst:             Semaphore_destroy
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:98,9'
          Dst:             Memory_free
    - functionName:    ReportControl_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/reporting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          166
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - Memory_free
        - MmsMapping_freeDynamicallyCreatedDataSet
        - MmsValue_delete
        - ReportBuffer_destroy
        - Semaphore_destroy
        - deleteDataSetValuesShadowBuffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:223,13'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:226,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:229,13'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:232,13'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:234,9'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:236,9'
          Dst:             deleteDataSetValuesShadowBuffer
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:242,17'
          Dst:             MmsMapping_freeDynamicallyCreatedDataSet
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:252,9'
          Dst:             ReportBuffer_destroy
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:255,9'
          Dst:             Semaphore_destroy
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:256,9'
          Dst:             Semaphore_destroy
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:259,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/reporting.c:261,9'
          Dst:             Memory_free
    - functionName:    createDataSetReference
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 825
      functionLinenumberEnd: 830
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - StringUtils_createString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:828,24'
          Dst:             StringUtils_createString
    - functionName:    createMmsGooseControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 728
      functionLinenumberEnd: 796
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          193
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
        - MmsMapping_createPhyComAddrStructure
        - StringUtils_copyString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:729,65'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:730,17'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:733,69'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:737,49'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:738,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:743,49'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:744,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:750,49'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:751,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:757,49'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:758,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:764,49'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:765,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:770,49'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:771,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:772,5'
          Dst:             MmsMapping_createPhyComAddrStructure
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:776,49'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:777,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:783,49'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:784,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:790,49'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:791,27'
          Dst:             StringUtils_copyString
    - functionName:    getGCBForLogicalNodeWithIndex
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 801
      functionLinenumberEnd: 821
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          63
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    GOOSE_createGOOSEControlBlocks
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 855
      functionLinenumberEnd: 980
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          402
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - LinkedList_add
        - Memory_calloc
        - MmsDomain_getName
        - MmsGooseControlBlock_create
        - MmsValue_getElement
        - MmsValue_newStructure
        - MmsValue_setOctetString
        - MmsValue_setUint16
        - MmsValue_setUint32
        - MmsValue_setUint8
        - MmsValue_setVisibleString
        - StringUtils_copyString
        - StringUtils_createString
        - createDataSetReference
        - createMmsGooseControlBlock
        - getGCBForLogicalNodeWithIndex
        - setNdsCom
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:856,75'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:858,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:862,79'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:869,46'
          Dst:             getGCBForLogicalNodeWithIndex
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:872,49'
          Dst:             createMmsGooseControlBlock
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:874,31'
          Dst:             MmsValue_newStructure
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:878,39'
          Dst:             MmsGooseControlBlock_create
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:880,55'
          Dst:             MmsDomain_getName
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:880,27'
          Dst:             StringUtils_createString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:885,30'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:887,13'
          Dst:             MmsValue_setVisibleString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:889,28'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:894,54'
          Dst:             MmsDomain_getName
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:894,31'
          Dst:             createDataSetReference
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:902,32'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:904,9'
          Dst:             MmsValue_setVisibleString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:924,32'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:925,26'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:926,9'
          Dst:             MmsValue_setOctetString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:928,26'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:929,9'
          Dst:             MmsValue_setUint8
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:931,28'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:932,9'
          Dst:             MmsValue_setUint16
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:934,30'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:935,9'
          Dst:             MmsValue_setUint16
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:937,29'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:939,9'
          Dst:             MmsValue_setUint32
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:960,29'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:961,9'
          Dst:             MmsValue_setUint32
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:963,29'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:964,9'
          Dst:             MmsValue_setUint32
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:967,13'
          Dst:             setNdsCom
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:969,13'
          Dst:             setNdsCom
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:975,9'
          Dst:             LinkedList_add
    - functionName:    MmsGooseControlBlock_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_calloc
        - Semaphore_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:277,53'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:283,29'
          Dst:             Semaphore_create
    - functionName:    setNdsCom
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_getElement
        - MmsValue_setBoolean
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:88,29'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:92,9'
          Dst:             MmsValue_setBoolean
    - functionName:    GOOSE_sendPendingEvents
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 835
      functionLinenumberEnd: 850
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          56
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - LinkedList_getNext
        - MmsGooseControlBlock_isEnabled
        - MmsGooseControlBlock_publishNewState
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:840,27'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:844,17'
          Dst:             MmsGooseControlBlock_isEnabled
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:846,17'
          Dst:             MmsGooseControlBlock_publishNewState
    - functionName:    MmsGooseControlBlock_isEnabled
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 391
      functionLinenumberEnd: 392
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsGooseControlBlock_publishNewState
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 685
      functionLinenumberEnd: 724
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          107
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - GoosePublisher_increaseStNum
        - GoosePublisher_publish
        - GoosePublisher_setTimeAllowedToLive
        - Semaphore_post
        - Semaphore_wait
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:694,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:697,32'
          Dst:             GoosePublisher_increaseStNum
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:705,13'
          Dst:             GoosePublisher_setTimeAllowedToLive
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:711,13'
          Dst:             GoosePublisher_setTimeAllowedToLive
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:714,9'
          Dst:             GoosePublisher_publish
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:719,9'
          Dst:             Semaphore_post
    - functionName:    MmsGooseControlBlock_setStateChangePending
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 679
      functionLinenumberEnd: 681
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsGooseControlBlock_checkAndPublish
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 625
      functionLinenumberEnd: 675
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          173
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - GoosePublisher_publish
        - GoosePublisher_setTimeAllowedToLive
        - IedServer_lockDataModel
        - IedServer_unlockDataModel
        - Semaphore_post
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:630,13'
          Dst:             IedServer_lockDataModel
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:635,17'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:640,17'
          Dst:             GoosePublisher_publish
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:647,25'
          Dst:             GoosePublisher_setTimeAllowedToLive
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:649,25'
          Dst:             GoosePublisher_setTimeAllowedToLive
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:655,21'
          Dst:             GoosePublisher_setTimeAllowedToLive
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:663,17'
          Dst:             Semaphore_post
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:667,13'
          Dst:             IedServer_unlockDataModel
    - functionName:    MmsGooseControlBlock_disable
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 621
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - GoosePublisher_destroy
        - LinkedList_destroyStatic
        - MmsGooseControlBlock_isEnabled
        - MmsValue_getElement
        - MmsValue_setBoolean
        - Semaphore_post
        - Semaphore_wait
        - copyGCBValuesToTrackingObject
        - updateGenericTrackingObjectValues
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:584,9'
          Dst:             MmsGooseControlBlock_isEnabled
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:586,27'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:588,9'
          Dst:             MmsValue_setBoolean
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:593,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:602,17'
          Dst:             GoosePublisher_destroy
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:604,17'
          Dst:             LinkedList_destroyStatic
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:613,9'
          Dst:             copyGCBValuesToTrackingObject
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:614,9'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:618,9'
          Dst:             Semaphore_post
    - functionName:    copyGCBValuesToTrackingObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          209
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - MmsGooseControlBlock_isEnabled
        - MmsValue_getBoolean
        - MmsValue_getElement
        - MmsValue_setBoolean
        - MmsValue_setUint32
        - MmsValue_setVisibleString
        - MmsValue_toUint32
        - MmsValue_update
        - StringUtils_replace
        - snprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:197,59'
          Dst:             MmsGooseControlBlock_isEnabled
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:197,13'
          Dst:             MmsValue_setBoolean
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:200,13'
          Dst:             MmsValue_setVisibleString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:208,13'
          Dst:             snprintf
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:210,13'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:211,13'
          Dst:             MmsValue_setVisibleString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:216,50'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:216,32'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:217,13'
          Dst:             MmsValue_setUint32
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:222,47'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:222,27'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:223,13'
          Dst:             MmsValue_setBoolean
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:228,58'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:228,11'
          Dst:             MmsValue_update
    - functionName:    updateGenericTrackingObjectValues
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          177
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - Hal_getTimeInMs
        - IedServer_updateVisibleStringAttributeValue
        - MmsValue_setInt32
        - MmsValue_setUtcTimeMsEx
        - private_IedServer_convertMmsDataAccessErrorToServiceError
        - snprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:246,13'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:249,59'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:249,13'
          Dst:             MmsValue_setUtcTimeMsEx
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:253,21'
          Dst:             private_IedServer_convertMmsDataAccessErrorToServiceError
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:252,13'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:263,9'
          Dst:             snprintf
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:267,13'
          Dst:             IedServer_updateVisibleStringAttributeValue
    - functionName:    calculateMaxDataSetSize
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_getMaxEncodedSize
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:404,25'
          Dst:             MmsValue_getMaxEncodedSize
    - functionName:    MmsGooseControlBlock_enable
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         47
      ICount:          491
      EdgeCount:       62
      CyclomaticComplexity: 17
      functionsReached:
        - GoosePublisher_createEx
        - GoosePublisher_setConfRev
        - GoosePublisher_setDataSetRef
        - GoosePublisher_setGoCbRef
        - GoosePublisher_setGoID
        - GoosePublisher_setNeedsCommission
        - GoosePublisher_setTimeAllowedToLive
        - IedModel_lookupDataSet
        - LinkedList_add
        - LinkedList_create
        - LinkedList_destroyStatic
        - Memory_free
        - MmsGooseControlBlock_isEnabled
        - MmsMapping_freeDynamicallyCreatedDataSet
        - MmsMapping_getDomainSpecificDataSet
        - MmsValue_getBoolean
        - MmsValue_getElement
        - MmsValue_getOctetStringBuffer
        - MmsValue_setBoolean
        - MmsValue_toInt32
        - MmsValue_toString
        - MmsValue_toUint32
        - Semaphore_post
        - Semaphore_wait
        - StringUtils_copyString
        - calculateMaxDataSetSize
        - copyGCBValuesToTrackingObject
        - setNdsCom
        - strlen
        - updateGenericTrackingObjectValues
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:418,5'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:421,10'
          Dst:             MmsGooseControlBlock_isEnabled
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:425,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:429,17'
          Dst:             MmsMapping_freeDynamicallyCreatedDataSet
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:436,17'
          Dst:             LinkedList_destroyStatic
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:443,52'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:443,34'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:447,32'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:449,29'
          Dst:             IedModel_lookupDataSet
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:455,33'
          Dst:             MmsMapping_getDomainSpecificDataSet
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:463,31'
          Dst:             calculateMaxDataSetSize
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:467,41'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:470,45'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:472,45'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:474,41'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:480,17'
          Dst:             setNdsCom
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:483,17'
          Dst:             copyGCBValuesToTrackingObject
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:484,17'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:489,35'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:491,17'
          Dst:             MmsValue_setBoolean
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:493,40'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:496,57'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:496,40'
          Dst:             MmsValue_toInt32
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:497,58'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:497,41'
          Dst:             MmsValue_toInt32
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:498,64'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:498,47'
          Dst:             MmsValue_toInt32
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:500,40'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:502,51'
          Dst:             MmsValue_getOctetStringBuffer
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:508,43'
          Dst:             GoosePublisher_createEx
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:510,43'
          Dst:             GoosePublisher_createEx
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:517,59'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:517,41'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:518,59'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:518,41'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:520,25'
          Dst:             GoosePublisher_setTimeAllowedToLive
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:522,25'
          Dst:             GoosePublisher_setDataSetRef
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:524,25'
          Dst:             GoosePublisher_setGoCbRef
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:526,62'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:526,44'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:528,25'
          Dst:             GoosePublisher_setConfRev
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:530,61'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:530,41'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:532,25'
          Dst:             GoosePublisher_setNeedsCommission
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:535,29'
          Dst:             GoosePublisher_setGoID
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:538,47'
          Dst:             LinkedList_create
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:544,29'
          Dst:             LinkedList_add
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:562,17'
          Dst:             copyGCBValuesToTrackingObject
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:563,17'
          Dst:             updateGenericTrackingObjectValues
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:575,5'
          Dst:             Semaphore_post
    - functionName:    MmsGooseControlBlock_getVariableSpecification
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 385
      functionLinenumberEnd: 386
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsGooseControlBlock_getMmsValues
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 379
      functionLinenumberEnd: 380
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsGooseControlBlock_getName
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 373
      functionLinenumberEnd: 374
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsGooseControlBlock_getLogicalNodeName
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsGooseControlBlock_getLogicalNode
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsGooseControlBlock_getDataSet
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 355
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsGooseControlBlock_getDomain
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 349
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsGooseControlBlock_setGooseInterfaceId
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 340
      functionLinenumberEnd: 345
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
        - StringUtils_copyString
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:342,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:344,30'
          Dst:             StringUtils_copyString
    - functionName:    MmsGooseControlBlock_useGooseVlanTag
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 336
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsGooseControlBlock_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 330
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         29
      ICount:          171
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - GoosePublisher_destroy
        - LinkedList_destroyStatic
        - Memory_free
        - MmsMapping_freeDynamicallyCreatedDataSet
        - MmsValue_delete
        - Semaphore_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:296,9'
          Dst:             Semaphore_destroy
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:301,13'
          Dst:             GoosePublisher_destroy
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:305,13'
          Dst:             LinkedList_destroyStatic
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:308,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:311,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:314,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:318,13'
          Dst:             MmsMapping_freeDynamicallyCreatedDataSet
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:324,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:326,9'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:328,9'
          Dst:             Memory_free
    - functionName:    MmsGooseControlBlock_getFixedOffs
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_getBoolean
        - MmsValue_getElement
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:176,36'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:180,22'
          Dst:             MmsValue_getBoolean
    - functionName:    MmsGooseControlBlock_getMaxTime
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_getElement
        - MmsValue_toInt32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:158,34'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:162,22'
          Dst:             MmsValue_toInt32
    - functionName:    MmsGooseControlBlock_getMinTime
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_getElement
        - MmsValue_toInt32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:140,34'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:144,22'
          Dst:             MmsValue_toInt32
    - functionName:    MmsGooseControlBlock_getGoEna
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsValue_getBoolean
        - MmsValue_getElement
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:122,32'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:126,22'
          Dst:             MmsValue_getBoolean
    - functionName:    getNdsCom
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_getBoolean
        - MmsValue_getElement
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:101,29'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:104,18'
          Dst:             MmsValue_getBoolean
    - functionName:    MmsGooseControlBlock_getNdsCom
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_goose.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - getNdsCom
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_goose.c:112,12'
          Dst:             getNdsCom
    - functionName:    createDataSetReference
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_sv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - StringUtils_createStringInBuffer
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:423,5'
          Dst:             StringUtils_createStringInBuffer
    - functionName:    createSVControlBlockMmsStructure
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_sv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 325
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          303
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - Memory_calloc
        - MmsMapping_createPhyComAddrStructure
        - StringUtils_copyString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:326,65'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:327,17'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:339,13'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:345,49'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:346,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:352,53'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:353,31'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:359,49'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:361,31'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:363,31'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:369,49'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:370,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:376,49'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:377,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:383,49'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:384,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:390,49'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:391,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:397,49'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:398,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:404,49'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:405,27'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:406,5'
          Dst:             MmsMapping_createPhyComAddrStructure
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:410,49'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:411,27'
          Dst:             StringUtils_copyString
    - functionName:    getSVCBForLogicalNodeWithIndex
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_sv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          81
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LIBIEC61850_SV_createSVControlBlocks
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_sv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 572
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          365
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - LinkedList_add
        - Memory_calloc
        - MmsDomain_getName
        - MmsSampledValueControlBlock_create
        - MmsValue_getElement
        - MmsValue_newStructure
        - MmsValue_setBitStringFromInteger
        - MmsValue_setInt32
        - MmsValue_setOctetString
        - MmsValue_setUint16
        - MmsValue_setUint8
        - MmsValue_setVisibleString
        - StringUtils_copyString
        - createDataSetReference
        - createSVControlBlockMmsStructure
        - getSVCBForLogicalNodeWithIndex
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:453,75'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:457,31'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:459,31'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:464,79'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:472,42'
          Dst:             getSVCBForLogicalNodeWithIndex
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:475,48'
          Dst:             createSVControlBlockMmsStructure
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:477,30'
          Dst:             MmsValue_newStructure
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:484,27'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:490,20'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:495,26'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:496,9'
          Dst:             MmsValue_setVisibleString
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:499,32'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:501,47'
          Dst:             MmsDomain_getName
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:501,9'
          Dst:             createDataSetReference
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:504,9'
          Dst:             MmsValue_setVisibleString
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:507,29'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:508,9'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:511,29'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:512,9'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:515,29'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:516,9'
          Dst:             MmsValue_setBitStringFromInteger
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:519,28'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:520,9'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:539,32'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:541,26'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:542,9'
          Dst:             MmsValue_setOctetString
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:544,26'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:545,9'
          Dst:             MmsValue_setUint8
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:547,28'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:548,9'
          Dst:             MmsValue_setUint16
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:550,30'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:551,9'
          Dst:             MmsValue_setUint16
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:554,28'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:555,9'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:557,47'
          Dst:             MmsSampledValueControlBlock_create
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:567,9'
          Dst:             LinkedList_add
    - functionName:    MmsSampledValueControlBlock_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_sv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:64,70'
          Dst:             Memory_calloc
    - functionName:    LIBIEC61850_SV_setSVCBHandler
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_sv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 428
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_getNext
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:429,30'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:440,23'
          Dst:             LinkedList_getNext
    - functionName:    LIBIEC61850_SV_readAccessSampledValueControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_sv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 238
      functionLinenumberEnd: 298
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          193
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - MmsMapping_getNextNameElement
        - MmsValue_getSubElement
        - StringUtils_copyStringMax
        - lookupSVCB
        - private_IedServer_getClientConnectionByHandle
        - strchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:243,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:245,23'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:254,24'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:259,21'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:264,43'
          Dst:             lookupSVCB
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:282,49'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:290,21'
          Dst:             MmsValue_getSubElement
    - functionName:    lookupSVCB
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_sv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          90
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - LinkedList_getNext
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:82,26'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:88,17'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:89,21'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:95,19'
          Dst:             LinkedList_getNext
    - functionName:    MmsSampledValueControlBlock_isEnabled
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_sv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MmsSampledValueControlBlock_disable
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_sv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_setBoolean
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:118,5'
          Dst:             MmsValue_setBoolean
    - functionName:    MmsSampledValueControlBlock_enable
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_sv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - MmsValue_setBoolean
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:105,5'
          Dst:             MmsValue_setBoolean
    - functionName:    LIBIEC61850_SV_writeAccessSVControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_sv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          286
      EdgeCount:       61
      CyclomaticComplexity: 19
      functionsReached:
        - MmsMapping_getNextNameElement
        - MmsSampledValueControlBlock_disable
        - MmsSampledValueControlBlock_enable
        - MmsSampledValueControlBlock_isEnabled
        - MmsValue_getBoolean
        - MmsValue_getType
        - MmsValue_setBoolean
        - StringUtils_copyStringMax
        - lookupSVCB
        - private_IedServer_getClientConnectionByHandle
        - strchr
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:139,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:141,23'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:150,24'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:155,21'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:162,43'
          Dst:             lookupSVCB
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:181,45'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:193,9'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:194,13'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:197,13'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:199,13'
          Dst:             MmsValue_setBoolean
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:203,13'
          Dst:             MmsValue_setBoolean
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:208,14'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:209,13'
          Dst:             MmsValue_getType
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:212,13'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:213,13'
          Dst:             MmsSampledValueControlBlock_enable
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:215,13'
          Dst:             MmsSampledValueControlBlock_disable
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:220,13'
          Dst:             MmsSampledValueControlBlock_isEnabled
    - functionName:    MmsSampledValueControlBlock_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/mms_sv.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
        - MmsValue_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:73,9'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/server/mms_mapping/mms_sv.c:75,9'
          Dst:             Memory_free
    - functionName:    prepareLogControl
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - IedModel_lookupDataSet
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:262,24'
          Dst:             IedModel_lookupDataSet
    - functionName:    createTrgOps
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 873
      functionLinenumberEnd: 890
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          94
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - MmsValue_newBitString
        - MmsValue_setBitStringBit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:874,24'
          Dst:             MmsValue_newBitString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:881,13'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/logging.c:883,13'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/logging.c:885,13'
          Dst:             MmsValue_setBitStringBit
        - Src:             'src/iec61850/server/mms_mapping/logging.c:887,13'
          Dst:             MmsValue_setBitStringBit
    - functionName:    createDataSetReferenceForDefaultDataSet
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 860
      functionLinenumberEnd: 868
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsDomain_getName
        - StringUtils_createString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:863,24'
          Dst:             MmsDomain_getName
        - Src:             'src/iec61850/server/mms_mapping/logging.c:866,24'
          Dst:             StringUtils_createString
    - functionName:    MmsMapping_setLogStorage
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1206
      functionLinenumberEnd: 1255
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          99
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - LogInstance_setLogStorage
        - MmsDevice_getDomain
        - MmsDomain_getJournal
        - MmsMapping_getMmsDomainFromObjectReference
        - StringUtils_concatString
        - getLogInstanceByLogRef
        - strchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1207,32'
          Dst:             getLogInstanceByLogRef
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1211,9'
          Dst:             LogInstance_setLogStorage
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1215,9'
          Dst:             MmsMapping_getMmsDomainFromObjectReference
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1219,9'
          Dst:             StringUtils_concatString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1221,32'
          Dst:             MmsDevice_getDomain
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1233,31'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1238,26'
          Dst:             MmsDomain_getJournal
    - functionName:    getLogInstanceByLogRef
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 343
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          148
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - LinkedList_getData
        - LinkedList_getNext
        - StringUtils_copyStringMax
        - strchr
        - strcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:349,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/logging.c:353,14'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/logging.c:364,15'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/logging.c:372,27'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/logging.c:376,51'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/server/mms_mapping/logging.c:378,13'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/logging.c:380,17'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/logging.c:384,21'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/logging.c:389,20'
          Dst:             LinkedList_getNext
    - functionName:    LogInstance_setLogStorage
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - LogInstance_updateStatus
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:203,5'
          Dst:             LogInstance_updateStatus
    - functionName:    LogInstance_updateStatus
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LogStorage_getOldestAndNewestEntries
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:193,9'
          Dst:             LogStorage_getOldestAndNewestEntries
    - functionName:    LogControl_logAllDatasetEntries
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1145
      functionLinenumberEnd: 1173
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          94
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - LogInstance_logEntryData
        - LogInstance_logEntryFinished
        - LogInstance_logEntryStart
        - sprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1155,28'
          Dst:             LogInstance_logEntryStart
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1163,17'
          Dst:             sprintf
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1165,17'
          Dst:             LogInstance_logEntryData
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1170,13'
          Dst:             LogInstance_logEntryFinished
    - functionName:    LogInstance_logEntryStart
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Hal_getTimeInMs
        - LogStorage_addEntry
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:138,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/logging.c:141,30'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/logging.c:143,28'
          Dst:             LogStorage_addEntry
    - functionName:    LogInstance_logEntryData
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LogStorage_addEntryData
        - Memory_free
        - Memory_malloc
        - MmsValue_encodeMmsData
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:163,24'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/logging.c:165,36'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/mms_mapping/logging.c:169,13'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/logging.c:171,13'
          Dst:             LogStorage_addEntryData
        - Src:             'src/iec61850/server/mms_mapping/logging.c:173,13'
          Dst:             Memory_free
    - functionName:    LogInstance_logEntryFinished
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Semaphore_post
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:184,5'
          Dst:             Semaphore_post
    - functionName:    Logging_processIntegrityLogs
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1177
      functionLinenumberEnd: 1202
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          88
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - LinkedList_getData
        - LinkedList_getNext
        - LogControl_logAllDatasetEntries
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1178,33'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1182,48'
          Dst:             LinkedList_getData
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1193,21'
          Dst:             LogControl_logAllDatasetEntries
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1200,26'
          Dst:             LinkedList_getNext
    - functionName:    LogControl_updateLogEna
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 895
      functionLinenumberEnd: 897
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MmsValue_getElement
        - MmsValue_setBoolean
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:896,25'
          Dst:             MmsValue_getElement
        - Src:             'src/iec61850/server/mms_mapping/logging.c:896,5'
          Dst:             MmsValue_setBoolean
    - functionName:    createLogControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 902
      functionLinenumberEnd: 1090
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          551
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - Memory_calloc
        - MmsValue_newBinaryTime
        - MmsValue_newBoolean
        - MmsValue_newOctetString
        - MmsValue_newUnsignedFromUint32
        - MmsValue_newVisibleString
        - StringUtils_concatString
        - StringUtils_copyString
        - StringUtils_createString
        - StringUtils_replace
        - createDataSetReferenceForDefaultDataSet
        - createTrgOps
        - prepareLogControl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:903,65'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/logging.c:907,21'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:910,42'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/logging.c:917,61'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/logging.c:921,73'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/logging.c:926,45'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/logging.c:928,31'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:932,51'
          Dst:             MmsValue_newBoolean
        - Src:             'src/iec61850/server/mms_mapping/logging.c:935,53'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/logging.c:936,31'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:945,13'
          Dst:             StringUtils_concatString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:947,55'
          Dst:             MmsValue_newVisibleString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:949,13'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/server/mms_mapping/logging.c:951,34'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:955,28'
          Dst:             StringUtils_createString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:958,55'
          Dst:             MmsValue_newVisibleString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:960,13'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/server/mms_mapping/logging.c:966,53'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/logging.c:970,35'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:978,38'
          Dst:             createDataSetReferenceForDefaultDataSet
        - Src:             'src/iec61850/server/mms_mapping/logging.c:982,55'
          Dst:             MmsValue_newVisibleString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:986,55'
          Dst:             MmsValue_newVisibleString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:990,53'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/logging.c:994,35'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1000,51'
          Dst:             MmsValue_newBinaryTime
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1005,53'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1009,35'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1015,51'
          Dst:             MmsValue_newBinaryTime
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1020,53'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1024,35'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1031,51'
          Dst:             MmsValue_newOctetString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1036,53'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1040,35'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1047,51'
          Dst:             MmsValue_newOctetString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1052,53'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1056,35'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1062,51'
          Dst:             createTrgOps
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1065,53'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1069,35'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1076,17'
          Dst:             MmsValue_newUnsignedFromUint32
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1087,9'
          Dst:             prepareLogControl
    - functionName:    getLCBForLogicalNodeWithIndex
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 313
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          63
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Logging_createLCBs
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1096
      functionLinenumberEnd: 1140
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          153
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - LinkedList_add
        - LogControl_create
        - LogControl_updateLogEna
        - Memory_calloc
        - StringUtils_copyString
        - StringUtils_createString
        - createLogControlBlock
        - enableLogging
        - getLCBForLogicalNodeWithIndex
        - getLogInstanceByLogRef
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1097,75'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1102,31'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1106,83'
          Dst:             Memory_calloc
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1113,38'
          Dst:             LogControl_create
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1117,52'
          Dst:             getLCBForLogicalNodeWithIndex
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1119,36'
          Dst:             StringUtils_createString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1123,25'
          Dst:             createLogControlBlock
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1126,47'
          Dst:             getLogInstanceByLogRef
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1129,21'
          Dst:             enableLogging
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1131,17'
          Dst:             LogControl_updateLogEna
        - Src:             'src/iec61850/server/mms_mapping/logging.c:1133,17'
          Dst:             LinkedList_add
    - functionName:    LogControl_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:209,38'
          Dst:             Memory_malloc
    - functionName:    enableLogging
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          84
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - Hal_getMonotonicTimeInMs
        - MmsValue_getSubElement
        - MmsValue_setBoolean
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:278,39'
          Dst:             Hal_getMonotonicTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/logging.c:282,29'
          Dst:             MmsValue_getSubElement
        - Src:             'src/iec61850/server/mms_mapping/logging.c:284,9'
          Dst:             MmsValue_setBoolean
    - functionName:    updateLogStatusInLCB
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LogInstance_updateStatus
        - MmsValue_setBinaryTime
        - MmsValue_setOctetString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:402,9'
          Dst:             LogInstance_updateStatus
        - Src:             'src/iec61850/server/mms_mapping/logging.c:404,9'
          Dst:             MmsValue_setBinaryTime
        - Src:             'src/iec61850/server/mms_mapping/logging.c:405,9'
          Dst:             MmsValue_setBinaryTime
        - Src:             'src/iec61850/server/mms_mapping/logging.c:407,9'
          Dst:             MmsValue_setOctetString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:408,9'
          Dst:             MmsValue_setOctetString
    - functionName:    LIBIEC61850_LOG_SVC_readAccessControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 786
      functionLinenumberEnd: 856
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          208
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - IedModel_getDevice
        - LogicalDevice_getLogicalNode
        - MmsMapping_getNextNameElement
        - MmsValue_getSubElement
        - StringUtils_copyStringMax
        - lookupLogControl
        - private_IedServer_getClientConnectionByHandle
        - strchr
        - updateLogStatusInLCB
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:791,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/logging.c:793,23'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/logging.c:802,24'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/logging.c:807,21'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/logging.c:812,30'
          Dst:             lookupLogControl
        - Src:             'src/iec61850/server/mms_mapping/logging.c:820,49'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/logging.c:822,33'
          Dst:             IedModel_getDevice
        - Src:             'src/iec61850/server/mms_mapping/logging.c:826,35'
          Dst:             LogicalDevice_getLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/logging.c:842,13'
          Dst:             updateLogStatusInLCB
        - Src:             'src/iec61850/server/mms_mapping/logging.c:846,25'
          Dst:             MmsValue_getSubElement
    - functionName:    lookupLogControl
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          90
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - LinkedList_getNext
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:318,26'
          Dst:             LinkedList_getNext
        - Src:             'src/iec61850/server/mms_mapping/logging.c:326,17'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/logging.c:328,21'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/logging.c:335,19'
          Dst:             LinkedList_getNext
    - functionName:    updateGenericTrackingObjectValues
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 460
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          155
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - Hal_getTimeInMs
        - IedServer_updateVisibleStringAttributeValue
        - MmsValue_setInt32
        - MmsValue_setUtcTimeMsEx
        - private_IedServer_convertMmsDataAccessErrorToServiceError
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:436,13'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/mms_mapping/logging.c:439,59'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/logging.c:439,13'
          Dst:             MmsValue_setUtcTimeMsEx
        - Src:             'src/iec61850/server/mms_mapping/logging.c:443,21'
          Dst:             private_IedServer_convertMmsDataAccessErrorToServiceError
        - Src:             'src/iec61850/server/mms_mapping/logging.c:442,13'
          Dst:             MmsValue_setInt32
        - Src:             'src/iec61850/server/mms_mapping/logging.c:453,9'
          Dst:             snprintf
        - Src:             'src/iec61850/server/mms_mapping/logging.c:457,13'
          Dst:             IedServer_updateVisibleStringAttributeValue
    - functionName:    copyLCBValuesToTrackingObject
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 464
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          160
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - MmsValue_setBitStringFromInteger
        - MmsValue_setBoolean
        - MmsValue_setUint32
        - MmsValue_setVisibleString
        - StringUtils_copyStringMax
        - StringUtils_replace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:470,13'
          Dst:             MmsValue_setBoolean
        - Src:             'src/iec61850/server/mms_mapping/logging.c:473,13'
          Dst:             MmsValue_setVisibleString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:481,17'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/logging.c:483,17'
          Dst:             StringUtils_replace
        - Src:             'src/iec61850/server/mms_mapping/logging.c:490,13'
          Dst:             MmsValue_setVisibleString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:494,13'
          Dst:             MmsValue_setUint32
        - Src:             'src/iec61850/server/mms_mapping/logging.c:498,13'
          Dst:             MmsValue_setBitStringFromInteger
    - functionName:    freeDynamicDataSet
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - MmsMapping_freeDynamicallyCreatedDataSet
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:419,13'
          Dst:             MmsMapping_freeDynamicallyCreatedDataSet
    - functionName:    LIBIEC61850_LOG_SVC_writeAccessLogControlBlock
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 510
      functionLinenumberEnd: 782
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         101
      ICount:          603
      EdgeCount:       135
      CyclomaticComplexity: 36
      functionsReached:
        - IedModel_getDevice
        - IedModel_lookupDataSet
        - LogicalDevice_getLogicalNode
        - MmsDevice_getNamedVariableListWithName
        - MmsMapping_createDataSetByNamedVariableList
        - MmsMapping_getDomainSpecificDataSet
        - MmsMapping_getNextNameElement
        - MmsValue_getBitStringAsInteger
        - MmsValue_getBoolean
        - MmsValue_getSubElement
        - MmsValue_toString
        - MmsValue_toUint32
        - MmsValue_update
        - StringUtils_copyStringMax
        - copyLCBValuesToTrackingObject
        - enableLogging
        - freeDynamicDataSet
        - getLogInstanceByLogRef
        - lookupLogControl
        - memcmp
        - private_IedServer_getClientConnectionByHandle
        - strchr
        - strcmp
        - strlen
        - updateGenericTrackingObjectValues
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:519,5'
          Dst:             StringUtils_copyStringMax
        - Src:             'src/iec61850/server/mms_mapping/logging.c:521,23'
          Dst:             strchr
        - Src:             'src/iec61850/server/mms_mapping/logging.c:530,24'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/logging.c:535,21'
          Dst:             MmsMapping_getNextNameElement
        - Src:             'src/iec61850/server/mms_mapping/logging.c:542,30'
          Dst:             lookupLogControl
        - Src:             'src/iec61850/server/mms_mapping/logging.c:552,49'
          Dst:             private_IedServer_getClientConnectionByHandle
        - Src:             'src/iec61850/server/mms_mapping/logging.c:554,33'
          Dst:             IedModel_getDevice
        - Src:             'src/iec61850/server/mms_mapping/logging.c:558,35'
          Dst:             LogicalDevice_getLogicalNode
        - Src:             'src/iec61850/server/mms_mapping/logging.c:583,9'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/logging.c:585,23'
          Dst:             MmsValue_getBoolean
        - Src:             'src/iec61850/server/mms_mapping/logging.c:593,17'
          Dst:             enableLogging
        - Src:             'src/iec61850/server/mms_mapping/logging.c:609,14'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/logging.c:614,34'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:624,20'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/logging.c:633,42'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/logging.c:635,37'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/logging.c:637,28'
          Dst:             memcmp
        - Src:             'src/iec61850/server/mms_mapping/logging.c:643,47'
          Dst:             getLogInstanceByLogRef
        - Src:             'src/iec61850/server/mms_mapping/logging.c:663,14'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/logging.c:668,38'
          Dst:             MmsValue_toString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:670,17'
          Dst:             strlen
        - Src:             'src/iec61850/server/mms_mapping/logging.c:677,36'
          Dst:             IedModel_lookupDataSet
        - Src:             'src/iec61850/server/mms_mapping/logging.c:681,21'
          Dst:             freeDynamicDataSet
        - Src:             'src/iec61850/server/mms_mapping/logging.c:692,31'
          Dst:             MmsMapping_getDomainSpecificDataSet
        - Src:             'src/iec61850/server/mms_mapping/logging.c:700,37'
          Dst:             MmsDevice_getNamedVariableListWithName
        - Src:             'src/iec61850/server/mms_mapping/logging.c:703,43'
          Dst:             MmsMapping_createDataSetByNamedVariableList
        - Src:             'src/iec61850/server/mms_mapping/logging.c:709,25'
          Dst:             freeDynamicDataSet
        - Src:             'src/iec61850/server/mms_mapping/logging.c:735,14'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/logging.c:739,34'
          Dst:             MmsValue_toUint32
        - Src:             'src/iec61850/server/mms_mapping/logging.c:748,14'
          Dst:             strcmp
        - Src:             'src/iec61850/server/mms_mapping/logging.c:752,39'
          Dst:             MmsValue_getBitStringAsInteger
        - Src:             'src/iec61850/server/mms_mapping/logging.c:764,29'
          Dst:             MmsValue_getSubElement
        - Src:             'src/iec61850/server/mms_mapping/logging.c:766,9'
          Dst:             MmsValue_update
        - Src:             'src/iec61850/server/mms_mapping/logging.c:777,5'
          Dst:             copyLCBValuesToTrackingObject
        - Src:             'src/iec61850/server/mms_mapping/logging.c:778,5'
          Dst:             updateGenericTrackingObjectValues
    - functionName:    LogControl_setLog
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 251
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LogControl_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          65
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - Memory_free
        - MmsValue_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:234,9'
          Dst:             MmsValue_delete
        - Src:             'src/iec61850/server/mms_mapping/logging.c:235,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/logging.c:238,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/logging.c:241,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/logging.c:243,9'
          Dst:             Memory_free
    - functionName:    LogInstance_logSingleData
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          88
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Hal_getTimeInMs
        - LogStorage_addEntry
        - LogStorage_addEntryData
        - Memory_free
        - Memory_malloc
        - MmsValue_encodeMmsData
        - Semaphore_post
        - Semaphore_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:94,9'
          Dst:             Semaphore_wait
        - Src:             'src/iec61850/server/mms_mapping/logging.c:100,30'
          Dst:             Hal_getTimeInMs
        - Src:             'src/iec61850/server/mms_mapping/logging.c:102,28'
          Dst:             LogStorage_addEntry
        - Src:             'src/iec61850/server/mms_mapping/logging.c:104,24'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/logging.c:106,36'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/mms_mapping/logging.c:110,13'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/iec61850/server/mms_mapping/logging.c:112,13'
          Dst:             LogStorage_addEntryData
        - Src:             'src/iec61850/server/mms_mapping/logging.c:114,13'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/logging.c:121,9'
          Dst:             Semaphore_post
    - functionName:    LogInstance_destroy
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
        - Semaphore_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:78,9'
          Dst:             Semaphore_destroy
        - Src:             'src/iec61850/server/mms_mapping/logging.c:81,9'
          Dst:             Memory_free
        - Src:             'src/iec61850/server/mms_mapping/logging.c:82,9'
          Dst:             Memory_free
    - functionName:    LogInstance_create
      functionSourceFile: '/src/libiec61850/src/iec61850/server/mms_mapping/logging.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_malloc
        - Semaphore_create
        - StringUtils_copyString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/iec61850/server/mms_mapping/logging.c:51,40'
          Dst:             Memory_malloc
        - Src:             'src/iec61850/server/mms_mapping/logging.c:55,22'
          Dst:             StringUtils_copyString
        - Src:             'src/iec61850/server/mms_mapping/logging.c:60,22'
          Dst:             Semaphore_create
    - functionName:    LogStorage_getOldestAndNewestEntries
      functionSourceFile: '/src/libiec61850/src/logging/log_storage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LogStorage_destroy
      functionSourceFile: '/src/libiec61850/src/logging/log_storage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LogStorage_getEntriesAfter
      functionSourceFile: '/src/libiec61850/src/logging/log_storage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LogStorage_getEntries
      functionSourceFile: '/src/libiec61850/src/logging/log_storage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LogStorage_addEntryData
      functionSourceFile: '/src/libiec61850/src/logging/log_storage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LogStorage_addEntry
      functionSourceFile: '/src/libiec61850/src/logging/log_storage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LogStorage_getMaxLogEntries
      functionSourceFile: '/src/libiec61850/src/logging/log_storage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LogStorage_setMaxLogEntries
      functionSourceFile: '/src/libiec61850/src/logging/log_storage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SEQUENCE_encode_uper
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SEQUENCE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1140
      functionLinenumberEnd: 1226
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          425
      EdgeCount:       74
      CyclomaticComplexity: 18
      functionsReached:
        - ASN_DEBUG
        - per_put_few_bits
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1150,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1155,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1182,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1186,6'
          Dst:             per_put_few_bits
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1187,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1203,5'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1208,5'
          Dst:             ASN_DEBUG
    - functionName:    ASN_DEBUG
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    37
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _ASN_STACK_OVERFLOW_CHECK
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          76
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - ASN_DEBUG
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/asn_internal.h:136,4'
          Dst:             ASN_DEBUG
    - functionName:    SEQUENCE_decode_uper
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SEQUENCE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1004
      functionLinenumberEnd: 1136
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         82
      ICount:          561
      EdgeCount:       103
      CyclomaticComplexity: 23
      functionsReached:
        - ASN_DEBUG
        - Memory_calloc
        - Memory_free
        - Memory_malloc
        - _ASN_STACK_OVERFLOW_CHECK
        - per_get_few_bits
        - per_get_many_bits
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1015,5'
          Dst:             _ASN_STACK_OVERFLOW_CHECK
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1016,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1019,16'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1020,11'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1023,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1027,16'
          Dst:             per_get_few_bits
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1033,22'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1034,14'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1036,6'
          Dst:             per_get_many_bits
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1037,4'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1043,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1069,18'
          Dst:             per_get_few_bits
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1070,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1078,7'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1079,7'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1089,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1093,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1095,4'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1104,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1105,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1126,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1127,5'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:1134,2'
          Dst:             Memory_free
    - functionName:    SEQUENCE_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SEQUENCE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 952
      functionLinenumberEnd: 1000
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          214
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SEQUENCE_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SEQUENCE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 924
      functionLinenumberEnd: 948
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          139
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - ASN_DEBUG
        - Memory_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:930,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:946,3'
          Dst:             Memory_free
    - functionName:    SEQUENCE_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SEQUENCE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 877
      functionLinenumberEnd: 921
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          314
      EdgeCount:       66
      CyclomaticComplexity: 18
      functionsReached:
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:884,18'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:907,20'
          Dst:             strlen
    - functionName:    SEQUENCE_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SEQUENCE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 827
      functionLinenumberEnd: 873
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         87
      ICount:          479
      EdgeCount:       109
      CyclomaticComplexity: 24
      functionsReached:
        - ASN_DEBUG
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:833,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:842,23'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:850,5'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:872,2'
          Dst:             ASN_DEBUG
    - functionName:    SEQUENCE_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SEQUENCE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 581
      functionLinenumberEnd: 822
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         163
      ICount:          1023
      EdgeCount:       190
      CyclomaticComplexity: 29
      functionsReached:
        - ASN_DEBUG
        - Memory_calloc
        - xer_check_tag
        - xer_next_token
        - xer_skip_unknown
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:668,3'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:672,4'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:688,4'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:705,3'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:759,6'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:605,22'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:658,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:666,13'
          Dst:             xer_next_token
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:682,9'
          Dst:             xer_check_tag
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:683,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:688,11'
          Dst:             xer_skip_unknown
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:727,6'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:742,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:757,12'
          Dst:             xer_check_tag
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:780,5'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:788,5'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:810,3'
          Dst:             ASN_DEBUG
    - functionName:    SEQUENCE_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SEQUENCE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 487
      functionLinenumberEnd: 564
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          371
      EdgeCount:       59
      CyclomaticComplexity: 14
      functionsReached:
        - ASN_DEBUG
        - der_write_tags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:493,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:507,5'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:518,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:525,8'
          Dst:             der_write_tags
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:526,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:528,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:553,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:561,3'
          Dst:             ASN_DEBUG
    - functionName:    _t2e_cmp
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SEQUENCE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          99
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SEQUENCE_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SEQUENCE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 478
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         300
      ICount:          1774
      EdgeCount:       364
      CyclomaticComplexity: 66
      functionsReached:
        - Memory_calloc
        - _t2e_cmp
        - ber_check_tags
        - ber_fetch_tag
        - ber_skip_length
        - bsearch
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:149,2'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:220,3'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:350,5'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:393,3'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:422,4'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:465,4'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:135,22'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:157,10'
          Dst:             ber_check_tags
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:218,13'
          Dst:             ber_fetch_tag
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:305,35'
          Dst:             bsearch
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:305,35'
          Dst:             _t2e_cmp
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:345,12'
          Dst:             ber_skip_length
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:421,9'
          Dst:             ber_fetch_tag
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE.c:462,9'
          Dst:             ber_skip_length
    - functionName:    bsearch
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ber_tlv_tag_serialize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ber_tlv_tag.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          167
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ber_fetch_tag
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ber_tlv_tag.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          119
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    InitiateErrorPdu_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/InitiateErrorPdu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - InitiateErrorPdu_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/InitiateErrorPdu.c:81,2'
          Dst:             InitiateErrorPdu_1_inherit_TYPE_descriptor
    - functionName:    InitiateErrorPdu_1_inherit_TYPE_descriptor
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/InitiateErrorPdu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          67
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    InitiateErrorPdu_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/InitiateErrorPdu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - InitiateErrorPdu_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/InitiateErrorPdu.c:73,2'
          Dst:             InitiateErrorPdu_1_inherit_TYPE_descriptor
    - functionName:    InitiateErrorPdu_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/InitiateErrorPdu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - InitiateErrorPdu_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/InitiateErrorPdu.c:66,2'
          Dst:             InitiateErrorPdu_1_inherit_TYPE_descriptor
    - functionName:    InitiateErrorPdu_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/InitiateErrorPdu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - InitiateErrorPdu_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/InitiateErrorPdu.c:58,2'
          Dst:             InitiateErrorPdu_1_inherit_TYPE_descriptor
    - functionName:    InitiateErrorPdu_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/InitiateErrorPdu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - InitiateErrorPdu_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/InitiateErrorPdu.c:51,2'
          Dst:             InitiateErrorPdu_1_inherit_TYPE_descriptor
    - functionName:    InitiateErrorPdu_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/InitiateErrorPdu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - InitiateErrorPdu_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/InitiateErrorPdu.c:44,2'
          Dst:             InitiateErrorPdu_1_inherit_TYPE_descriptor
    - functionName:    InitiateErrorPdu_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/InitiateErrorPdu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 17
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Identifier_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Identifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Identifier_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Identifier.c:81,2'
          Dst:             Identifier_1_inherit_TYPE_descriptor
    - functionName:    Identifier_1_inherit_TYPE_descriptor
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Identifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          67
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Identifier_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Identifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Identifier_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Identifier.c:73,2'
          Dst:             Identifier_1_inherit_TYPE_descriptor
    - functionName:    Identifier_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Identifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Identifier_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Identifier.c:66,2'
          Dst:             Identifier_1_inherit_TYPE_descriptor
    - functionName:    Identifier_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Identifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Identifier_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Identifier.c:58,2'
          Dst:             Identifier_1_inherit_TYPE_descriptor
    - functionName:    Identifier_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Identifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Identifier_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Identifier.c:51,2'
          Dst:             Identifier_1_inherit_TYPE_descriptor
    - functionName:    Identifier_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Identifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Identifier_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Identifier.c:44,2'
          Dst:             Identifier_1_inherit_TYPE_descriptor
    - functionName:    Identifier_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Identifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 17
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    der_tlv_length_serialize
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ber_tlv_length.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          128
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ASN_DEBUG
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _ASN_STACK_OVERFLOW_CHECK
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          76
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - ASN_DEBUG
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/asn_internal.h:136,4'
          Dst:             ASN_DEBUG
    - functionName:    ber_skip_length
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ber_tlv_length.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          175
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - ASN_DEBUG
        - _ASN_STACK_OVERFLOW_CHECK
        - ber_fetch_length
        - ber_fetch_tag
        - ber_skip_length
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ber_tlv_length.c:88,5'
          Dst:             _ASN_STACK_OVERFLOW_CHECK
        - Src:             'src/mms/iso_mms/asn1c/ber_tlv_length.c:94,7'
          Dst:             ber_fetch_length
        - Src:             'src/mms/iso_mms/asn1c/ber_tlv_length.c:110,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/ber_tlv_length.c:115,8'
          Dst:             ber_fetch_tag
        - Src:             'src/mms/iso_mms/asn1c/ber_tlv_length.c:118,8'
          Dst:             ber_skip_length
    - functionName:    ber_fetch_length
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ber_tlv_length.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          188
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asn_INTEGER2long
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/INTEGER.c'
      linkageType:     InternalLinkage
      functionLinenumber: 738
      functionLinenumberEnd: 795
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          195
      EdgeCount:       45
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    18
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/INTEGER.c:764,4'
          Branch Sides:    []
      Callsites:       []
    - functionName:    asn_long2INTEGER
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/INTEGER.c'
      linkageType:     InternalLinkage
      functionLinenumber: 798
      functionLinenumberEnd: 850
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          192
      EdgeCount:       38
      CyclomaticComplexity: 9
      functionsReached:
        - Memory_free
        - Memory_malloc
      functionUses:    17
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/INTEGER.c:831,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:811,19'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:845,14'
          Dst:             Memory_free
    - functionName:    ASN_DEBUG
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    22
      BranchProfiles:  []
      Callsites:       []
    - functionName:    INTEGER_encode_uper
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/INTEGER.c'
      linkageType:     InternalLinkage
      functionLinenumber: 666
      functionLinenumberEnd: 735
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         90
      ICount:          510
      EdgeCount:       113
      CyclomaticComplexity: 25
      functionsReached:
        - ASN_DEBUG
        - asn_INTEGER2long
        - per_put_few_bits
        - per_put_many_bits
        - uper_put_length
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:674,27'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:683,6'
          Dst:             asn_INTEGER2long
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:684,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:694,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:699,7'
          Dst:             per_put_few_bits
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:700,5'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:703,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:711,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:713,6'
          Dst:             per_put_few_bits
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:715,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:720,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:722,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:726,23'
          Dst:             uper_put_length
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:728,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:729,6'
          Dst:             per_put_many_bits
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:730,4'
          Dst:             ASN_DEBUG
    - functionName:    INTEGER_decode_uper
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/INTEGER.c'
      linkageType:     InternalLinkage
      functionLinenumber: 571
      functionLinenumberEnd: 662
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         105
      ICount:          562
      EdgeCount:       132
      CyclomaticComplexity: 29
      functionsReached:
        - ASN_DEBUG
        - Memory_calloc
        - Memory_free
        - Memory_malloc
        - Memory_realloc
        - asn_INTEGER2long
        - asn_long2INTEGER
        - per_get_few_bits
        - per_get_many_bits
        - uper_get_length
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:580,30'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:581,11'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:588,15'
          Dst:             per_get_few_bits
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:593,2'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:596,25'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:597,17'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:601,25'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:602,17'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:614,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:616,17'
          Dst:             per_get_few_bits
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:618,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:621,7'
          Dst:             asn_long2INTEGER
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:622,5'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:626,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:636,9'
          Dst:             uper_get_length
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:639,7'
          Dst:             Memory_realloc
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:640,10'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:643,9'
          Dst:             per_get_many_bits
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:655,6'
          Dst:             asn_INTEGER2long
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:656,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:657,6'
          Dst:             asn_long2INTEGER
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:658,4'
          Dst:             ASN_DEBUG
    - functionName:    INTEGER_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/INTEGER.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          183
      EdgeCount:       31
      CyclomaticComplexity: 7
      functionsReached:
        - ASN_DEBUG
        - der_encode_primitive
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/INTEGER.c:69,4'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:48,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/INTEGER.c:95,9'
          Dst:             der_encode_primitive
    - functionName:    xer_decode__body
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_codecs_prim.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          112
      EdgeCount:       21
      CyclomaticComplexity: 4
      functionsReached:
        - xer_is_whitespace
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/asn_codecs_prim.c:208,2'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:185,6'
          Dst:             xer_is_whitespace
    - functionName:    xer_decode__unexpected_tag
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_codecs_prim.c'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          96
      EdgeCount:       18
      CyclomaticComplexity: 3
      functionsReached:
        - xer_is_whitespace
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/asn_codecs_prim.c:163,2'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:153,6'
          Dst:             xer_is_whitespace
    - functionName:    xer_decode_primitive
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_codecs_prim.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          200
      EdgeCount:       38
      CyclomaticComplexity: 7
      functionsReached:
        - ASN_DEBUG
        - Memory_calloc
        - xer_decode__body
        - xer_decode__unexpected_tag
        - xer_decode_general
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/asn_codecs_prim.c:257,2'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:243,11'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:244,14'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:254,7'
          Dst:             xer_decode_general
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:254,7'
          Dst:             xer_decode__unexpected_tag
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:254,7'
          Dst:             xer_decode__body
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:261,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:274,5'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:290,4'
          Dst:             ASN_DEBUG
    - functionName:    ASN_DEBUG
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ASN__PRIMITIVE_TYPE_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_codecs_prim.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          70
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - ASN_DEBUG
        - Memory_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:125,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:128,3'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:131,3'
          Dst:             Memory_free
    - functionName:    der_encode_primitive
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_codecs_prim.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          134
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ASN_DEBUG
        - der_write_tags
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:90,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:93,18'
          Dst:             der_write_tags
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:95,2'
          Dst:             ASN_DEBUG
    - functionName:    ber_decode_primitive
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_codecs_prim.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          218
      EdgeCount:       32
      CyclomaticComplexity: 8
      functionsReached:
        - ASN_DEBUG
        - Memory_calloc
        - Memory_malloc
        - ber_check_tags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:24,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:25,18'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:29,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:35,9'
          Dst:             ber_check_tags
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:40,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:58,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:61,23'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:64,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/asn_codecs_prim.c:73,2'
          Dst:             ASN_DEBUG
    - functionName:    _ASN_STACK_OVERFLOW_CHECK
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          76
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - ASN_DEBUG
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/asn_internal.h:136,4'
          Dst:             ASN_DEBUG
    - functionName:    ASN_DEBUG
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SET_OF_decode_uper
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SET_OF.c'
      linkageType:     InternalLinkage
      functionLinenumber: 851
      functionLinenumberEnd: 925
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         76
      ICount:          375
      EdgeCount:       97
      CyclomaticComplexity: 23
      functionsReached:
        - ASN_DEBUG
        - Memory_calloc
        - _ASN_STACK_OVERFLOW_CHECK
        - asn_set_add
        - per_get_few_bits
        - uper_get_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:868,5'
          Dst:             _ASN_STACK_OVERFLOW_CHECK
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:869,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:875,16'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:876,11'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:886,15'
          Dst:             per_get_few_bits
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:893,12'
          Dst:             per_get_few_bits
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:904,13'
          Dst:             uper_get_length
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:913,8'
          Dst:             asn_set_add
    - functionName:    SET_OF_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SET_OF.c'
      linkageType:     InternalLinkage
      functionLinenumber: 812
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          138
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SET_OF_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SET_OF.c'
      linkageType:     InternalLinkage
      functionLinenumber: 776
      functionLinenumberEnd: 808
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          152
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - Memory_free
        - asn_set_empty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:795,3'
          Dst:             asn_set_empty
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:805,4'
          Dst:             Memory_free
    - functionName:    SET_OF_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SET_OF.c'
      linkageType:     InternalLinkage
      functionLinenumber: 745
      functionLinenumberEnd: 773
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          248
      EdgeCount:       51
      CyclomaticComplexity: 14
      functionsReached:
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:754,18'
          Dst:             strlen
    - functionName:    SET_OF_xer_order
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SET_OF.c'
      linkageType:     InternalLinkage
      functionLinenumber: 621
      functionLinenumberEnd: 635
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          98
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:628,8'
          Dst:             memcmp
    - functionName:    SET_OF_encode_xer_callback
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SET_OF.c'
      linkageType:     InternalLinkage
      functionLinenumber: 607
      functionLinenumberEnd: 619
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          90
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:611,13'
          Dst:             Memory_realloc
    - functionName:    SET_OF_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SET_OF.c'
      linkageType:     InternalLinkage
      functionLinenumber: 641
      functionLinenumberEnd: 741
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         160
      ICount:          861
      EdgeCount:       205
      CyclomaticComplexity: 47
      functionsReached:
        - ASN_DEBUG
        - Memory_free
        - Memory_malloc
        - SET_OF_xer_order
        - qsort
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:648,24'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:656,12'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:659,27'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:660,13'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:695,17'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:716,3'
          Dst:             qsort
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:716,3'
          Dst:             SET_OF_xer_order
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:720,4'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:736,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:738,3'
          Dst:             Memory_free
    - functionName:    qsort
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SET_OF_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SET_OF.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 597
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         87
      ICount:          529
      EdgeCount:       97
      CyclomaticComplexity: 12
      functionsReached:
        - Memory_calloc
        - asn_set_add
        - xer_check_tag
        - xer_next_token
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/constr_SET_OF.c:541,3'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_SET_OF.c:545,4'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_SET_OF.c:557,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:484,22'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:524,8'
          Dst:             asn_set_add
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:539,13'
          Dst:             xer_next_token
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:555,9'
          Dst:             xer_check_tag
    - functionName:    _el_buf_cmp
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SET_OF.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          100
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:293,8'
          Dst:             memcmp
    - functionName:    _el_addbytes
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SET_OF.c'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          52
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SET_OF_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SET_OF.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 446
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         62
      ICount:          457
      EdgeCount:       81
      CyclomaticComplexity: 21
      functionsReached:
        - Memory_free
        - Memory_malloc
        - _el_addbytes
        - _el_buf_cmp
        - der_write_tags
        - qsort
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:343,18'
          Dst:             der_write_tags
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:363,37'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:384,32'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:390,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:391,4'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:401,11'
          Dst:             _el_addbytes
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:405,5'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:406,4'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:416,2'
          Dst:             qsort
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:416,2'
          Dst:             _el_buf_cmp
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:429,3'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:431,2'
          Dst:             Memory_free
    - functionName:    SET_OF_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SET_OF.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         170
      ICount:          916
      EdgeCount:       201
      CyclomaticComplexity: 33
      functionsReached:
        - Memory_calloc
        - asn_set_add
        - ber_check_tags
        - ber_fetch_tag
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/constr_SET_OF.c:106,2'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_SET_OF.c:155,3'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_SET_OF.c:208,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:92,22'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:114,10'
          Dst:             ber_check_tags
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:154,13'
          Dst:             ber_fetch_tag
        - Src:             'src/mms/iso_mms/asn1c/constr_SET_OF.c:212,8'
          Dst:             asn_set_add
    - functionName:    asn_set_empty
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_SET_OF.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          87
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - Memory_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/asn_SET_OF.c:80,4'
          Dst:             Memory_free
    - functionName:    asn_set_del
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_SET_OF.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          116
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asn_set_add
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_SET_OF.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          116
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - Memory_realloc
        - __errno_location
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/asn_SET_OF.c:17,3'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/asn_SET_OF.c:27,14'
          Dst:             Memory_realloc
    - functionName:    __errno_location
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    51
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SEQUENCE_OF_encode_uper
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         80
      ICount:          481
      EdgeCount:       101
      CyclomaticComplexity: 23
      functionsReached:
        - ASN_DEBUG
        - per_put_few_bits
        - uper_put_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:152,12'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:157,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:167,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:172,7'
          Dst:             per_put_few_bits
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:173,5'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:176,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:181,6'
          Dst:             per_put_few_bits
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:183,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:192,16'
          Dst:             uper_put_length
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:193,22'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:198,18'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:202,5'
          Dst:             ASN_DEBUG
    - functionName:    ASN_DEBUG
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SEQUENCE_OF_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         128
      ICount:          663
      EdgeCount:       163
      CyclomaticComplexity: 37
      functionsReached:
        - ASN_DEBUG
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:100,30'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:104,12'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:123,17'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:140,2'
          Dst:             ASN_DEBUG
    - functionName:    SEQUENCE_OF_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          251
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - ASN_DEBUG
        - der_write_tags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:24,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:43,18'
          Dst:             der_write_tags
        - Src:             'src/mms/iso_mms/asn1c/constr_SEQUENCE_OF.c:58,2'
          Dst:             ASN_DEBUG
    - functionName:    _asn_i_ctfailcb
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constraints.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          141
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - vsnprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constraints.c:52,9'
          Dst:             vsnprintf
    - functionName:    vsnprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asn_check_constraints
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constraints.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          77
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - _asn_i_ctfailcb
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constraints.c:86,8'
          Dst:             _asn_i_ctfailcb
    - functionName:    asn_generic_unknown_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constraints.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asn_generic_no_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constraints.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6
      functionLinenumberEnd: 14
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    der_write_TL
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/der_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - int
        - size_t
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          154
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - ber_tlv_tag_serialize
        - der_tlv_length_serialize
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/der_encoder.c:167,8'
          Dst:             ber_tlv_tag_serialize
        - Src:             'src/mms/iso_mms/asn1c/der_encoder.c:172,8'
          Dst:             der_tlv_length_serialize
    - functionName:    der_write_tags
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/der_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      size_t
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          304
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - ASN_DEBUG
        - __errno_location
        - der_write_TL
        - printf
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/der_encoder.c:91,6'
          Dst:             printf
        - Src:             'src/mms/iso_mms/asn1c/der_encoder.c:92,6'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/der_encoder.c:129,13'
          Dst:             der_write_TL
        - Src:             'src/mms/iso_mms/asn1c/der_encoder.c:137,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/der_encoder.c:150,9'
          Dst:             der_write_TL
    - functionName:    ASN_DEBUG
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encode_to_buffer_cb
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/der_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          52
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    der_encode_to_buffer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/der_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - encode_to_buffer_cb
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/der_encoder.c:62,7'
          Dst:             encode_to_buffer_cb
    - functionName:    der_encode
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/der_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ASN_DEBUG
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/der_encoder.c:18,2'
          Dst:             ASN_DEBUG
    - functionName:    VisibleString_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/VisibleString.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          147
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    OS__strtoent
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 878
      functionLinenumberEnd: 912
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          201
      EdgeCount:       36
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/OCTET_STRING.c:889,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    OS__check_escaped_control_char
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 651
      functionLinenumberEnd: 666
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:662,26'
          Dst:             memcmp
    - functionName:    OCTET_STRING_new_fromBuf
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1470
      functionLinenumberEnd: 1482
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          76
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - Memory_calloc
        - Memory_free
        - OCTET_STRING_fromBuf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1476,25'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1477,18'
          Dst:             OCTET_STRING_fromBuf
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1478,3'
          Dst:             Memory_free
    - functionName:    OCTET_STRING_fromBuf
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1433
      functionLinenumberEnd: 1467
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          124
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - Memory_free
        - Memory_malloc
        - __errno_location
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1437,3'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1445,3'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1453,9'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1456,8'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1462,2'
          Dst:             Memory_free
    - functionName:    OCTET_STRING_print_utf8
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1378
      functionLinenumberEnd: 1389
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    OCTET_STRING__convert_entrefs
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 917
      functionLinenumberEnd: 1052
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         72
      ICount:          655
      EdgeCount:       98
      CyclomaticComplexity: 28
      functionsReached:
        - Memory_realloc
        - OS__strtoent
        - memchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:925,15'
          Dst:             Memory_realloc
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:957,10'
          Dst:             OS__strtoent
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:999,23'
          Dst:             memchr
    - functionName:    memchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    OCTET_STRING__handle_control_chars
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 688
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          87
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_realloc
        - OS__check_escaped_control_char
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:675,21'
          Dst:             OS__check_escaped_control_char
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:678,13'
          Dst:             Memory_realloc
    - functionName:    OCTET_STRING_decode_xer_utf8
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1142
      functionLinenumberEnd: 1144
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OCTET_STRING__convert_entrefs
        - OCTET_STRING__decode_xer
        - OCTET_STRING__handle_control_chars
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1143,9'
          Dst:             OCTET_STRING__decode_xer
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1143,9'
          Dst:             OCTET_STRING__handle_control_chars
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1143,9'
          Dst:             OCTET_STRING__convert_entrefs
    - functionName:    OCTET_STRING__decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1066
      functionLinenumberEnd: 1112
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          172
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - Memory_calloc
        - Memory_free
        - xer_decode_general
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1080,26'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1089,24'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1103,9'
          Dst:             xer_decode_general
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1107,2'
          Dst:             Memory_free
    - functionName:    OCTET_STRING__convert_binary
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 815
      functionLinenumberEnd: 872
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          250
      EdgeCount:       38
      CyclomaticComplexity: 7
      functionsReached:
        - Memory_realloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/OCTET_STRING.c:841,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:824,15'
          Dst:             Memory_realloc
    - functionName:    OCTET_STRING_decode_xer_binary
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1131
      functionLinenumberEnd: 1133
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OCTET_STRING__convert_binary
        - OCTET_STRING__decode_xer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1132,9'
          Dst:             OCTET_STRING__decode_xer
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1132,9'
          Dst:             OCTET_STRING__convert_binary
    - functionName:    OCTET_STRING__convert_hexadecimal
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 738
      functionLinenumberEnd: 810
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          320
      EdgeCount:       56
      CyclomaticComplexity: 6
      functionsReached:
        - Memory_realloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/OCTET_STRING.c:761,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:749,15'
          Dst:             Memory_realloc
    - functionName:    OCTET_STRING_encode_xer_utf8
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 693
      functionLinenumberEnd: 733
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          288
      EdgeCount:       50
      CyclomaticComplexity: 12
      functionsReached:
        - ASN_DEBUG
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:704,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:721,5'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:729,3'
          Dst:             ASN_DEBUG
    - functionName:    ASN_DEBUG
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    OS__add_stack_el
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          108
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - Memory_calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:147,29'
          Dst:             Memory_calloc
    - functionName:    _new_stack
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:167,26'
          Dst:             Memory_calloc
    - functionName:    OCTET_STRING_encode_uper
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1250
      functionLinenumberEnd: 1333
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         88
      ICount:          517
      EdgeCount:       109
      CyclomaticComplexity: 23
      functionsReached:
        - ASN_DEBUG
        - per_put_few_bits
        - per_put_many_bits
        - uper_put_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1269,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1286,5'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1294,6'
          Dst:             per_put_few_bits
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1295,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1302,9'
          Dst:             per_put_few_bits
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1304,11'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1305,9'
          Dst:             per_put_many_bits
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1306,11'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1311,6'
          Dst:             uper_put_length
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1312,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1318,21'
          Dst:             uper_put_length
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1319,19'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1321,9'
          Dst:             per_put_many_bits
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1322,11'
          Dst:             ASN_DEBUG
    - functionName:    OCTET_STRING_decode_uper
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1152
      functionLinenumberEnd: 1246
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         88
      ICount:          573
      EdgeCount:       111
      CyclomaticComplexity: 25
      functionsReached:
        - ASN_DEBUG
        - Memory_calloc
        - Memory_free
        - Memory_malloc
        - Memory_realloc
        - per_get_few_bits
        - per_get_many_bits
        - uper_get_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1173,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1177,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1182,15'
          Dst:             per_get_few_bits
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1190,3'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1196,24'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1204,13'
          Dst:             per_get_many_bits
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1222,14'
          Dst:             uper_get_length
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1235,7'
          Dst:             Memory_realloc
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1239,9'
          Dst:             per_get_many_bits
    - functionName:    OCTET_STRING_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         94
      ICount:          556
      EdgeCount:       117
      CyclomaticComplexity: 25
      functionsReached:
        - ASN_DEBUG
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:548,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:594,2'
          Dst:             ASN_DEBUG
    - functionName:    OCTET_STRING_decode_xer_hex
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1120
      functionLinenumberEnd: 1122
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OCTET_STRING__convert_hexadecimal
        - OCTET_STRING__decode_xer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1121,9'
          Dst:             OCTET_STRING__decode_xer
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1121,9'
          Dst:             OCTET_STRING__convert_hexadecimal
    - functionName:    OCTET_STRING_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 477
      functionLinenumberEnd: 532
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          315
      EdgeCount:       59
      CyclomaticComplexity: 14
      functionsReached:
        - ASN_DEBUG
        - der_write_tags
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:490,16'
          Dst:             der_write_tags
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:531,2'
          Dst:             ASN_DEBUG
    - functionName:    OCTET_STRING_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 469
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         462
      ICount:          2599
      EdgeCount:       566
      CyclomaticComplexity: 106
      functionsReached:
        - Memory_calloc
        - Memory_realloc
        - OS__add_stack_el
        - _new_stack
        - ber_check_tags
        - ber_fetch_length
        - ber_fetch_tag
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/OCTET_STRING.c:200,2'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/OCTET_STRING.c:271,3'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/OCTET_STRING.c:281,3'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/OCTET_STRING.c:315,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:193,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:205,10'
          Dst:             ber_check_tags
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:215,15'
          Dst:             _new_stack
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:227,5'
          Dst:             Memory_realloc
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:269,8'
          Dst:             ber_fetch_tag
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:278,8'
          Dst:             ber_fetch_length
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:293,5'
          Dst:             Memory_realloc
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:353,9'
          Dst:             OS__add_stack_el
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:372,4'
          Dst:             Memory_realloc
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:401,5'
          Dst:             Memory_realloc
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:404,5'
          Dst:             Memory_realloc
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:433,4'
          Dst:             Memory_realloc
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:445,4'
          Dst:             Memory_realloc
    - functionName:    OCTET_STRING_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1337
      functionLinenumberEnd: 1374
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          254
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    OCTET_STRING_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/OCTET_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1393
      functionLinenumberEnd: 1427
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          134
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - Memory_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1408,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1419,13'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1421,9'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/OCTET_STRING.c:1425,9'
          Dst:             Memory_free
    - functionName:    Integer16_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer16.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Integer16_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Integer16.c:98,2'
          Dst:             Integer16_1_inherit_TYPE_descriptor
    - functionName:    Integer16_1_inherit_TYPE_descriptor
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer16.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          67
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Integer16_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer16.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Integer16_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Integer16.c:90,2'
          Dst:             Integer16_1_inherit_TYPE_descriptor
    - functionName:    Integer16_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer16.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Integer16_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Integer16.c:83,2'
          Dst:             Integer16_1_inherit_TYPE_descriptor
    - functionName:    Integer16_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer16.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Integer16_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Integer16.c:75,2'
          Dst:             Integer16_1_inherit_TYPE_descriptor
    - functionName:    Integer16_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer16.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Integer16_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Integer16.c:68,2'
          Dst:             Integer16_1_inherit_TYPE_descriptor
    - functionName:    Integer16_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer16.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Integer16_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Integer16.c:61,2'
          Dst:             Integer16_1_inherit_TYPE_descriptor
    - functionName:    Integer16_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer16.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          95
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Integer8_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Integer8_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Integer8.c:98,2'
          Dst:             Integer8_1_inherit_TYPE_descriptor
    - functionName:    Integer8_1_inherit_TYPE_descriptor
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          67
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Integer8_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Integer8_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Integer8.c:90,2'
          Dst:             Integer8_1_inherit_TYPE_descriptor
    - functionName:    Integer8_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Integer8_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Integer8.c:83,2'
          Dst:             Integer8_1_inherit_TYPE_descriptor
    - functionName:    Integer8_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Integer8_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Integer8.c:75,2'
          Dst:             Integer8_1_inherit_TYPE_descriptor
    - functionName:    Integer8_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Integer8_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Integer8.c:68,2'
          Dst:             Integer8_1_inherit_TYPE_descriptor
    - functionName:    Integer8_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Integer8_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Integer8.c:61,2'
          Dst:             Integer8_1_inherit_TYPE_descriptor
    - functionName:    Integer8_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          95
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ASN_DEBUG
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _ASN_STACK_OVERFLOW_CHECK
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          76
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - ASN_DEBUG
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/asn_internal.h:136,4'
          Dst:             ASN_DEBUG
    - functionName:    ber_check_tags
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ber_decoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      'N/A'
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         225
      ICount:          1071
      EdgeCount:       275
      CyclomaticComplexity: 52
      functionsReached:
        - _ASN_STACK_OVERFLOW_CHECK
        - ber_fetch_length
        - ber_fetch_tag
      functionUses:    7
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/ber_decoder.c:121,3'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/ber_decoder.c:128,3'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/ber_decoder.c:144,3'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/ber_decoder.c:195,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ber_decoder.c:83,5'
          Dst:             _ASN_STACK_OVERFLOW_CHECK
        - Src:             'src/mms/iso_mms/asn1c/ber_decoder.c:120,13'
          Dst:             ber_fetch_tag
        - Src:             'src/mms/iso_mms/asn1c/ber_decoder.c:126,13'
          Dst:             ber_fetch_length
        - Src:             'src/mms/iso_mms/asn1c/ber_decoder.c:142,13'
          Dst:             ber_fetch_tag
        - Src:             'src/mms/iso_mms/asn1c/ber_decoder.c:192,13'
          Dst:             ber_fetch_length
    - functionName:    ber_decode
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ber_decoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uper_put_length
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/per_support.c'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          102
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - per_put_few_bits
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:306,10'
          Dst:             per_put_few_bits
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:309,10'
          Dst:             per_put_few_bits
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:315,9'
          Dst:             per_put_few_bits
    - functionName:    per_put_few_bits
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/per_support.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          413
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - ASN_DEBUG
        - per_put_few_bits
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:196,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:232,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:254,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:255,3'
          Dst:             per_put_few_bits
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:256,3'
          Dst:             per_put_few_bits
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:257,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:260,2'
          Dst:             ASN_DEBUG
    - functionName:    ASN_DEBUG
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    per_put_many_bits
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/per_support.c'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 297
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          154
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - per_put_few_bits
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:280,7'
          Dst:             per_put_few_bits
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:290,7'
          Dst:             per_put_few_bits
    - functionName:    uper_put_nsnnwn
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/per_support.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          94
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - per_put_few_bits
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:168,10'
          Dst:             per_put_few_bits
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:178,5'
          Dst:             per_put_few_bits
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:181,9'
          Dst:             per_put_few_bits
    - functionName:    uper_get_nsnnwn
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/per_support.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          84
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - per_get_few_bits
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:140,10'
          Dst:             per_get_few_bits
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:144,12'
          Dst:             per_get_few_bits
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:151,11'
          Dst:             per_get_few_bits
    - functionName:    per_get_few_bits
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/per_support.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          266
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - ASN_DEBUG
        - per_get_few_bits
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:21,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:51,12'
          Dst:             per_get_few_bits
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:52,12'
          Dst:             per_get_few_bits
    - functionName:    uper_get_length
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/per_support.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          118
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - per_get_few_bits
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:114,24'
          Dst:             per_get_few_bits
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:116,10'
          Dst:             per_get_few_bits
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:121,33'
          Dst:             per_get_few_bits
    - functionName:    per_get_many_bits
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/per_support.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          220
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - per_get_few_bits
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:70,11'
          Dst:             per_get_few_bits
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:78,12'
          Dst:             per_get_few_bits
        - Src:             'src/mms/iso_mms/asn1c/per_support.c:85,12'
          Dst:             per_get_few_bits
    - functionName:    ParameterSupportOptions_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ParameterSupportOptions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ParameterSupportOptions_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ParameterSupportOptions.c:81,2'
          Dst:             ParameterSupportOptions_1_inherit_TYPE_descriptor
    - functionName:    ParameterSupportOptions_1_inherit_TYPE_descriptor
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ParameterSupportOptions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          67
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ParameterSupportOptions_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ParameterSupportOptions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ParameterSupportOptions_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ParameterSupportOptions.c:73,2'
          Dst:             ParameterSupportOptions_1_inherit_TYPE_descriptor
    - functionName:    ParameterSupportOptions_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ParameterSupportOptions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ParameterSupportOptions_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ParameterSupportOptions.c:66,2'
          Dst:             ParameterSupportOptions_1_inherit_TYPE_descriptor
    - functionName:    ParameterSupportOptions_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ParameterSupportOptions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ParameterSupportOptions_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ParameterSupportOptions.c:58,2'
          Dst:             ParameterSupportOptions_1_inherit_TYPE_descriptor
    - functionName:    ParameterSupportOptions_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ParameterSupportOptions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ParameterSupportOptions_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ParameterSupportOptions.c:51,2'
          Dst:             ParameterSupportOptions_1_inherit_TYPE_descriptor
    - functionName:    ParameterSupportOptions_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ParameterSupportOptions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ParameterSupportOptions_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ParameterSupportOptions.c:44,2'
          Dst:             ParameterSupportOptions_1_inherit_TYPE_descriptor
    - functionName:    ParameterSupportOptions_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ParameterSupportOptions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 17
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ASN_DEBUG
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BIT_STRING_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/BIT_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         110
      ICount:          618
      EdgeCount:       137
      CyclomaticComplexity: 29
      functionsReached:
        - ASN_DEBUG
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/BIT_STRING.c:88,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/BIT_STRING.c:132,2'
          Dst:             ASN_DEBUG
    - functionName:    BIT_STRING_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/BIT_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          110
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BIT_STRING_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/BIT_STRING.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          313
      EdgeCount:       66
      CyclomaticComplexity: 18
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ServiceSupportOptions_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ServiceSupportOptions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ServiceSupportOptions_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ServiceSupportOptions.c:81,2'
          Dst:             ServiceSupportOptions_1_inherit_TYPE_descriptor
    - functionName:    ServiceSupportOptions_1_inherit_TYPE_descriptor
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ServiceSupportOptions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          67
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ServiceSupportOptions_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ServiceSupportOptions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ServiceSupportOptions_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ServiceSupportOptions.c:73,2'
          Dst:             ServiceSupportOptions_1_inherit_TYPE_descriptor
    - functionName:    ServiceSupportOptions_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ServiceSupportOptions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ServiceSupportOptions_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ServiceSupportOptions.c:66,2'
          Dst:             ServiceSupportOptions_1_inherit_TYPE_descriptor
    - functionName:    ServiceSupportOptions_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ServiceSupportOptions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ServiceSupportOptions_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ServiceSupportOptions.c:58,2'
          Dst:             ServiceSupportOptions_1_inherit_TYPE_descriptor
    - functionName:    ServiceSupportOptions_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ServiceSupportOptions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ServiceSupportOptions_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ServiceSupportOptions.c:51,2'
          Dst:             ServiceSupportOptions_1_inherit_TYPE_descriptor
    - functionName:    ServiceSupportOptions_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ServiceSupportOptions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ServiceSupportOptions_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ServiceSupportOptions.c:44,2'
          Dst:             ServiceSupportOptions_1_inherit_TYPE_descriptor
    - functionName:    ServiceSupportOptions_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ServiceSupportOptions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 17
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ConcludeResponsePDU_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ConcludeResponsePDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ConcludeResponsePDU_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ConcludeResponsePDU.c:81,2'
          Dst:             ConcludeResponsePDU_1_inherit_TYPE_descriptor
    - functionName:    ConcludeResponsePDU_1_inherit_TYPE_descriptor
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ConcludeResponsePDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          67
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ConcludeResponsePDU_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ConcludeResponsePDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ConcludeResponsePDU_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ConcludeResponsePDU.c:73,2'
          Dst:             ConcludeResponsePDU_1_inherit_TYPE_descriptor
    - functionName:    ConcludeResponsePDU_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ConcludeResponsePDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ConcludeResponsePDU_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ConcludeResponsePDU.c:66,2'
          Dst:             ConcludeResponsePDU_1_inherit_TYPE_descriptor
    - functionName:    ConcludeResponsePDU_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ConcludeResponsePDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ConcludeResponsePDU_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ConcludeResponsePDU.c:58,2'
          Dst:             ConcludeResponsePDU_1_inherit_TYPE_descriptor
    - functionName:    ConcludeResponsePDU_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ConcludeResponsePDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ConcludeResponsePDU_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ConcludeResponsePDU.c:51,2'
          Dst:             ConcludeResponsePDU_1_inherit_TYPE_descriptor
    - functionName:    ConcludeResponsePDU_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ConcludeResponsePDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ConcludeResponsePDU_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ConcludeResponsePDU.c:44,2'
          Dst:             ConcludeResponsePDU_1_inherit_TYPE_descriptor
    - functionName:    ConcludeResponsePDU_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ConcludeResponsePDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 17
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ASN_DEBUG
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    NULL__xer_body_decode
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/NULL.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - xer_is_whitespace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/NULL.c:77,5'
          Dst:             xer_is_whitespace
    - functionName:    NULL_encode_uper
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/NULL.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       5
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    NULL_decode_uper
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/NULL.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          71
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - ASN_DEBUG
        - Memory_malloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/NULL.c:118,11'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/asn1c/NULL.c:122,4'
          Dst:             ASN_DEBUG
    - functionName:    NULL_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/NULL.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       5
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    NULL_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/NULL.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - NULL__xer_body_decode
        - xer_decode_primitive
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/NULL.c:88,9'
          Dst:             xer_decode_primitive
        - Src:             'src/mms/iso_mms/asn1c/NULL.c:88,9'
          Dst:             NULL__xer_body_decode
    - functionName:    NULL_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/NULL.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          59
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - der_write_tags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/NULL.c:44,18'
          Dst:             der_write_tags
    - functionName:    NULL_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/NULL.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BOOLEAN__xer_body_decode
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/BOOLEAN.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          101
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - xer_check_tag
        - xer_is_whitespace
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/BOOLEAN.c:147,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:147,10'
          Dst:             xer_check_tag
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:153,7'
          Dst:             xer_check_tag
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:164,6'
          Dst:             xer_is_whitespace
    - functionName:    ASN_DEBUG
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BOOLEAN_encode_uper
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/BOOLEAN.c'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - ASN_DEBUG
        - per_put_few_bits
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:279,10'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:281,2'
          Dst:             per_put_few_bits
    - functionName:    BOOLEAN_decode_uper
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/BOOLEAN.c'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          121
      EdgeCount:       21
      CyclomaticComplexity: 3
      functionsReached:
        - ASN_DEBUG
        - Memory_malloc
        - per_get_few_bits
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/BOOLEAN.c:257,2'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:250,30'
          Dst:             Memory_malloc
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:251,11'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:257,9'
          Dst:             per_get_few_bits
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:260,20'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:263,2'
          Dst:             ASN_DEBUG
    - functionName:    BOOLEAN_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/BOOLEAN.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          130
      EdgeCount:       28
      CyclomaticComplexity: 6
      functionsReached:
        - ASN_DEBUG
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:192,10'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:204,2'
          Dst:             ASN_DEBUG
    - functionName:    BOOLEAN_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/BOOLEAN.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BOOLEAN__xer_body_decode
        - xer_decode_primitive
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:177,9'
          Dst:             xer_decode_primitive
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:177,9'
          Dst:             BOOLEAN__xer_body_decode
    - functionName:    BOOLEAN_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/BOOLEAN.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          102
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - der_write_tags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:110,18'
          Dst:             der_write_tags
    - functionName:    BOOLEAN_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/BOOLEAN.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          171
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - ASN_DEBUG
        - Memory_calloc
        - ber_check_tags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:51,36'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:59,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:65,9'
          Dst:             ber_check_tags
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:70,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:96,2'
          Dst:             ASN_DEBUG
    - functionName:    BOOLEAN_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/BOOLEAN.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BOOLEAN_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/BOOLEAN.c'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          45
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - Memory_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/BOOLEAN.c:236,3'
          Dst:             Memory_free
    - functionName:    DataAccessError_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/DataAccessError.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DataAccessError_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/DataAccessError.c:81,2'
          Dst:             DataAccessError_1_inherit_TYPE_descriptor
    - functionName:    DataAccessError_1_inherit_TYPE_descriptor
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/DataAccessError.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          67
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DataAccessError_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/DataAccessError.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DataAccessError_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/DataAccessError.c:73,2'
          Dst:             DataAccessError_1_inherit_TYPE_descriptor
    - functionName:    DataAccessError_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/DataAccessError.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DataAccessError_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/DataAccessError.c:66,2'
          Dst:             DataAccessError_1_inherit_TYPE_descriptor
    - functionName:    DataAccessError_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/DataAccessError.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DataAccessError_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/DataAccessError.c:58,2'
          Dst:             DataAccessError_1_inherit_TYPE_descriptor
    - functionName:    DataAccessError_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/DataAccessError.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DataAccessError_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/DataAccessError.c:51,2'
          Dst:             DataAccessError_1_inherit_TYPE_descriptor
    - functionName:    DataAccessError_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/DataAccessError.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DataAccessError_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/DataAccessError.c:44,2'
          Dst:             DataAccessError_1_inherit_TYPE_descriptor
    - functionName:    DataAccessError_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/DataAccessError.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 17
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    FloatingPoint_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/FloatingPoint.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - FloatingPoint_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/FloatingPoint.c:81,2'
          Dst:             FloatingPoint_1_inherit_TYPE_descriptor
    - functionName:    FloatingPoint_1_inherit_TYPE_descriptor
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/FloatingPoint.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          67
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    FloatingPoint_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/FloatingPoint.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - FloatingPoint_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/FloatingPoint.c:73,2'
          Dst:             FloatingPoint_1_inherit_TYPE_descriptor
    - functionName:    FloatingPoint_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/FloatingPoint.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - FloatingPoint_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/FloatingPoint.c:66,2'
          Dst:             FloatingPoint_1_inherit_TYPE_descriptor
    - functionName:    FloatingPoint_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/FloatingPoint.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - FloatingPoint_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/FloatingPoint.c:58,2'
          Dst:             FloatingPoint_1_inherit_TYPE_descriptor
    - functionName:    FloatingPoint_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/FloatingPoint.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - FloatingPoint_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/FloatingPoint.c:51,2'
          Dst:             FloatingPoint_1_inherit_TYPE_descriptor
    - functionName:    FloatingPoint_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/FloatingPoint.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - FloatingPoint_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/FloatingPoint.c:44,2'
          Dst:             FloatingPoint_1_inherit_TYPE_descriptor
    - functionName:    FloatingPoint_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/FloatingPoint.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 17
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    TimeOfDay_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/TimeOfDay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - TimeOfDay_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/TimeOfDay.c:81,2'
          Dst:             TimeOfDay_1_inherit_TYPE_descriptor
    - functionName:    TimeOfDay_1_inherit_TYPE_descriptor
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/TimeOfDay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          67
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    TimeOfDay_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/TimeOfDay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - TimeOfDay_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/TimeOfDay.c:73,2'
          Dst:             TimeOfDay_1_inherit_TYPE_descriptor
    - functionName:    TimeOfDay_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/TimeOfDay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - TimeOfDay_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/TimeOfDay.c:66,2'
          Dst:             TimeOfDay_1_inherit_TYPE_descriptor
    - functionName:    TimeOfDay_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/TimeOfDay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - TimeOfDay_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/TimeOfDay.c:58,2'
          Dst:             TimeOfDay_1_inherit_TYPE_descriptor
    - functionName:    TimeOfDay_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/TimeOfDay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - TimeOfDay_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/TimeOfDay.c:51,2'
          Dst:             TimeOfDay_1_inherit_TYPE_descriptor
    - functionName:    TimeOfDay_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/TimeOfDay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - TimeOfDay_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/TimeOfDay.c:44,2'
          Dst:             TimeOfDay_1_inherit_TYPE_descriptor
    - functionName:    TimeOfDay_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/TimeOfDay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 17
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MMSString_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/MMSString.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MMSString_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/MMSString.c:81,2'
          Dst:             MMSString_1_inherit_TYPE_descriptor
    - functionName:    MMSString_1_inherit_TYPE_descriptor
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/MMSString.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          67
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    MMSString_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/MMSString.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MMSString_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/MMSString.c:73,2'
          Dst:             MMSString_1_inherit_TYPE_descriptor
    - functionName:    MMSString_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/MMSString.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MMSString_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/MMSString.c:66,2'
          Dst:             MMSString_1_inherit_TYPE_descriptor
    - functionName:    MMSString_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/MMSString.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MMSString_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/MMSString.c:58,2'
          Dst:             MMSString_1_inherit_TYPE_descriptor
    - functionName:    MMSString_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/MMSString.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MMSString_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/MMSString.c:51,2'
          Dst:             MMSString_1_inherit_TYPE_descriptor
    - functionName:    MMSString_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/MMSString.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - MMSString_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/MMSString.c:44,2'
          Dst:             MMSString_1_inherit_TYPE_descriptor
    - functionName:    MMSString_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/MMSString.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 17
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    UTF8String_to_wcs
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/UTF8String.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          59
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - UTF8String__process
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/UTF8String.c:143,17'
          Dst:             UTF8String__process
    - functionName:    UTF8String__process
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/UTF8String.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          204
      EdgeCount:       39
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/UTF8String.c:97,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    UTF8String_length
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/UTF8String.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - UTF8String__process
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/UTF8String.c:134,10'
          Dst:             UTF8String__process
    - functionName:    UTF8String_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/UTF8String.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - UTF8String_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/UTF8String.c:77,16'
          Dst:             UTF8String_length
    - functionName:    UTF8String_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/UTF8String.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    UtcTime_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/UtcTime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - UtcTime_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/UtcTime.c:99,2'
          Dst:             UtcTime_1_inherit_TYPE_descriptor
    - functionName:    UtcTime_1_inherit_TYPE_descriptor
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/UtcTime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          67
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    UtcTime_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/UtcTime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - UtcTime_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/UtcTime.c:91,2'
          Dst:             UtcTime_1_inherit_TYPE_descriptor
    - functionName:    UtcTime_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/UtcTime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - UtcTime_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/UtcTime.c:84,2'
          Dst:             UtcTime_1_inherit_TYPE_descriptor
    - functionName:    UtcTime_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/UtcTime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - UtcTime_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/UtcTime.c:76,2'
          Dst:             UtcTime_1_inherit_TYPE_descriptor
    - functionName:    UtcTime_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/UtcTime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - UtcTime_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/UtcTime.c:69,2'
          Dst:             UtcTime_1_inherit_TYPE_descriptor
    - functionName:    UtcTime_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/UtcTime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - UtcTime_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/UtcTime.c:62,2'
          Dst:             UtcTime_1_inherit_TYPE_descriptor
    - functionName:    UtcTime_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/UtcTime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          88
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Integer32_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer32.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Integer32_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Integer32.c:98,2'
          Dst:             Integer32_1_inherit_TYPE_descriptor
    - functionName:    Integer32_1_inherit_TYPE_descriptor
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer32.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          67
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Integer32_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer32.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Integer32_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Integer32.c:90,2'
          Dst:             Integer32_1_inherit_TYPE_descriptor
    - functionName:    Integer32_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer32.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Integer32_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Integer32.c:83,2'
          Dst:             Integer32_1_inherit_TYPE_descriptor
    - functionName:    Integer32_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer32.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Integer32_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Integer32.c:75,2'
          Dst:             Integer32_1_inherit_TYPE_descriptor
    - functionName:    Integer32_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer32.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Integer32_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Integer32.c:68,2'
          Dst:             Integer32_1_inherit_TYPE_descriptor
    - functionName:    Integer32_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer32.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Integer32_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Integer32.c:61,2'
          Dst:             Integer32_1_inherit_TYPE_descriptor
    - functionName:    Integer32_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Integer32.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          95
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    GetNamedVariableListAttributesRequest_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/GetNamedVariableListAttributesRequest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - GetNamedVariableListAttributesRequest_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/GetNamedVariableListAttributesRequest.c:81,2'
          Dst:             GetNamedVariableListAttributesRequest_1_inherit_TYPE_descriptor
    - functionName:    GetNamedVariableListAttributesRequest_1_inherit_TYPE_descriptor
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/GetNamedVariableListAttributesRequest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          67
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    GetNamedVariableListAttributesRequest_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/GetNamedVariableListAttributesRequest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - GetNamedVariableListAttributesRequest_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/GetNamedVariableListAttributesRequest.c:73,2'
          Dst:             GetNamedVariableListAttributesRequest_1_inherit_TYPE_descriptor
    - functionName:    GetNamedVariableListAttributesRequest_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/GetNamedVariableListAttributesRequest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - GetNamedVariableListAttributesRequest_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/GetNamedVariableListAttributesRequest.c:66,2'
          Dst:             GetNamedVariableListAttributesRequest_1_inherit_TYPE_descriptor
    - functionName:    GetNamedVariableListAttributesRequest_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/GetNamedVariableListAttributesRequest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - GetNamedVariableListAttributesRequest_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/GetNamedVariableListAttributesRequest.c:58,2'
          Dst:             GetNamedVariableListAttributesRequest_1_inherit_TYPE_descriptor
    - functionName:    GetNamedVariableListAttributesRequest_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/GetNamedVariableListAttributesRequest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - GetNamedVariableListAttributesRequest_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/GetNamedVariableListAttributesRequest.c:51,2'
          Dst:             GetNamedVariableListAttributesRequest_1_inherit_TYPE_descriptor
    - functionName:    GetNamedVariableListAttributesRequest_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/GetNamedVariableListAttributesRequest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - GetNamedVariableListAttributesRequest_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/GetNamedVariableListAttributesRequest.c:44,2'
          Dst:             GetNamedVariableListAttributesRequest_1_inherit_TYPE_descriptor
    - functionName:    GetNamedVariableListAttributesRequest_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/GetNamedVariableListAttributesRequest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 17
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Unsigned32_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Unsigned32.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Unsigned32_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Unsigned32.c:104,2'
          Dst:             Unsigned32_1_inherit_TYPE_descriptor
    - functionName:    Unsigned32_1_inherit_TYPE_descriptor
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Unsigned32.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          67
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Unsigned32_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Unsigned32.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Unsigned32_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Unsigned32.c:96,2'
          Dst:             Unsigned32_1_inherit_TYPE_descriptor
    - functionName:    Unsigned32_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Unsigned32.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Unsigned32_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Unsigned32.c:89,2'
          Dst:             Unsigned32_1_inherit_TYPE_descriptor
    - functionName:    Unsigned32_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Unsigned32.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Unsigned32_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Unsigned32.c:81,2'
          Dst:             Unsigned32_1_inherit_TYPE_descriptor
    - functionName:    Unsigned32_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Unsigned32.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Unsigned32_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Unsigned32.c:74,2'
          Dst:             Unsigned32_1_inherit_TYPE_descriptor
    - functionName:    Unsigned32_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Unsigned32.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Unsigned32_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Unsigned32.c:67,2'
          Dst:             Unsigned32_1_inherit_TYPE_descriptor
    - functionName:    Unsigned32_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Unsigned32.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          123
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - asn_INTEGER2long
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Unsigned32.c:25,5'
          Dst:             asn_INTEGER2long
    - functionName:    CHOICE_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_CHOICE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 978
      functionLinenumberEnd: 1011
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          153
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - Memory_free
        - _fetch_present_idx
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:989,12'
          Dst:             _fetch_present_idx
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:1009,3'
          Dst:             Memory_free
    - functionName:    _fetch_present_idx
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_CHOICE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1024
      functionLinenumberEnd: 1041
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          54
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    7
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/constr_CHOICE.c:1030,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    CHOICE_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_CHOICE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 938
      functionLinenumberEnd: 975
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          159
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - _fetch_present_idx
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:947,12'
          Dst:             _fetch_present_idx
    - functionName:    CHOICE_encode_uper
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_CHOICE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 865
      functionLinenumberEnd: 933
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         88
      ICount:          513
      EdgeCount:       110
      CyclomaticComplexity: 24
      functionsReached:
        - ASN_DEBUG
        - _fetch_present_idx
        - per_put_few_bits
        - uper_put_nsnnwn
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:872,12'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:878,12'
          Dst:             _fetch_present_idx
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:886,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:898,8'
          Dst:             per_put_few_bits
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:899,6'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:901,5'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:907,6'
          Dst:             per_put_few_bits
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:908,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:911,6'
          Dst:             per_put_few_bits
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:912,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:915,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:916,6'
          Dst:             uper_put_nsnnwn
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:917,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:919,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:926,17'
          Dst:             ASN_DEBUG
    - functionName:    ASN_DEBUG
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    25
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _ASN_STACK_OVERFLOW_CHECK
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          76
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - ASN_DEBUG
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/asn_internal.h:136,4'
          Dst:             ASN_DEBUG
    - functionName:    CHOICE_decode_uper
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_CHOICE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 792
      functionLinenumberEnd: 861
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         75
      ICount:          438
      EdgeCount:       93
      CyclomaticComplexity: 20
      functionsReached:
        - ASN_DEBUG
        - Memory_calloc
        - _ASN_STACK_OVERFLOW_CHECK
        - _set_present_idx
        - per_get_few_bits
        - uper_get_nsnnwn
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:802,5'
          Dst:             _ASN_STACK_OVERFLOW_CHECK
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:803,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:809,16'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:810,11'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:818,11'
          Dst:             per_get_few_bits
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:824,11'
          Dst:             per_get_few_bits
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:828,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:831,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:832,11'
          Dst:             uper_get_nsnnwn
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:836,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:838,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:846,2'
          Dst:             _set_present_idx
    - functionName:    _set_present_idx
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_CHOICE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1044
      functionLinenumberEnd: 1056
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/constr_CHOICE.c:1048,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    CHOICE_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_CHOICE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 740
      functionLinenumberEnd: 788
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         89
      ICount:          506
      EdgeCount:       111
      CyclomaticComplexity: 24
      functionsReached:
        - ASN_DEBUG
        - _fetch_present_idx
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:746,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:751,12'
          Dst:             _fetch_present_idx
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:754,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:760,23'
          Dst:             strlen
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:764,18'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:787,2'
          Dst:             ASN_DEBUG
    - functionName:    CHOICE_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_CHOICE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 528
      functionLinenumberEnd: 734
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         121
      ICount:          743
      EdgeCount:       135
      CyclomaticComplexity: 16
      functionsReached:
        - Memory_calloc
        - _set_present_idx
        - xer_check_tag
        - xer_next_token
        - xer_skip_unknown
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/constr_CHOICE.c:621,3'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_CHOICE.c:625,4'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_CHOICE.c:640,4'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_CHOICE.c:657,3'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_CHOICE.c:685,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:549,22'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:605,4'
          Dst:             _set_present_idx
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:620,13'
          Dst:             xer_next_token
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:635,9'
          Dst:             xer_check_tag
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:640,11'
          Dst:             xer_skip_unknown
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:684,11'
          Dst:             xer_check_tag
    - functionName:    CHOICE_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_CHOICE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 468
      functionLinenumberEnd: 512
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          176
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - _fetch_present_idx
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:479,12'
          Dst:             _fetch_present_idx
    - functionName:    CHOICE_outmost_tag
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_CHOICE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 435
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          115
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - _fetch_present_idx
        - asn_TYPE_outmost_tag
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:445,12'
          Dst:             _fetch_present_idx
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:459,10'
          Dst:             asn_TYPE_outmost_tag
    - functionName:    CHOICE_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_CHOICE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          361
      EdgeCount:       65
      CyclomaticComplexity: 15
      functionsReached:
        - ASN_DEBUG
        - _fetch_present_idx
        - der_write_tags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:360,12'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:362,12'
          Dst:             _fetch_present_idx
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:375,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:390,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:414,9'
          Dst:             der_write_tags
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:417,4'
          Dst:             ASN_DEBUG
    - functionName:    _search4tag
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_CHOICE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          85
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CHOICE_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_CHOICE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         203
      ICount:          1126
      EdgeCount:       235
      CyclomaticComplexity: 34
      functionsReached:
        - Memory_calloc
        - _search4tag
        - _set_present_idx
        - ber_check_tags
        - ber_fetch_tag
        - ber_skip_length
        - bsearch
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/constr_CHOICE.c:138,2'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_CHOICE.c:171,3'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_CHOICE.c:203,5'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_CHOICE.c:250,3'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/constr_CHOICE.c:299,4'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:124,22'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:147,11'
          Dst:             ber_check_tags
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:169,13'
          Dst:             ber_fetch_tag
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:182,35'
          Dst:             bsearch
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:182,35'
          Dst:             _search4tag
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:198,12'
          Dst:             ber_skip_length
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:243,3'
          Dst:             _set_present_idx
        - Src:             'src/mms/iso_mms/asn1c/constr_CHOICE.c:298,9'
          Dst:             ber_fetch_tag
    - functionName:    DefineNamedVariableListResponse_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/DefineNamedVariableListResponse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DefineNamedVariableListResponse_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/DefineNamedVariableListResponse.c:81,2'
          Dst:             DefineNamedVariableListResponse_1_inherit_TYPE_descriptor
    - functionName:    DefineNamedVariableListResponse_1_inherit_TYPE_descriptor
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/DefineNamedVariableListResponse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          67
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DefineNamedVariableListResponse_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/DefineNamedVariableListResponse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DefineNamedVariableListResponse_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/DefineNamedVariableListResponse.c:73,2'
          Dst:             DefineNamedVariableListResponse_1_inherit_TYPE_descriptor
    - functionName:    DefineNamedVariableListResponse_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/DefineNamedVariableListResponse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DefineNamedVariableListResponse_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/DefineNamedVariableListResponse.c:66,2'
          Dst:             DefineNamedVariableListResponse_1_inherit_TYPE_descriptor
    - functionName:    DefineNamedVariableListResponse_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/DefineNamedVariableListResponse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DefineNamedVariableListResponse_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/DefineNamedVariableListResponse.c:58,2'
          Dst:             DefineNamedVariableListResponse_1_inherit_TYPE_descriptor
    - functionName:    DefineNamedVariableListResponse_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/DefineNamedVariableListResponse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DefineNamedVariableListResponse_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/DefineNamedVariableListResponse.c:51,2'
          Dst:             DefineNamedVariableListResponse_1_inherit_TYPE_descriptor
    - functionName:    DefineNamedVariableListResponse_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/DefineNamedVariableListResponse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DefineNamedVariableListResponse_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/DefineNamedVariableListResponse.c:44,2'
          Dst:             DefineNamedVariableListResponse_1_inherit_TYPE_descriptor
    - functionName:    DefineNamedVariableListResponse_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/DefineNamedVariableListResponse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 17
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ASN_DEBUG
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    NativeInteger_encode_uper
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/NativeInteger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          95
      EdgeCount:       16
      CyclomaticComplexity: 4
      functionsReached:
        - ASN_DEBUG
        - INTEGER_encode_uper
        - asn_long2INTEGER
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:204,12'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:208,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:211,5'
          Dst:             asn_long2INTEGER
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:212,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:213,7'
          Dst:             INTEGER_encode_uper
    - functionName:    NativeInteger_decode_uper
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/NativeInteger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          120
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - ASN_DEBUG
        - INTEGER_decode_uper
        - Memory_calloc
        - asn_INTEGER2long
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:175,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:178,29'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:179,15'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:183,9'
          Dst:             INTEGER_decode_uper
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:186,6'
          Dst:             asn_INTEGER2long
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:189,4'
          Dst:             ASN_DEBUG
    - functionName:    NativeInteger_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/NativeInteger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          83
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - INTEGER_encode_der
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:155,10'
          Dst:             INTEGER_encode_der
    - functionName:    NativeInteger_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/NativeInteger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          160
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - ASN_DEBUG
        - Memory_calloc
        - asn_INTEGER2long
        - ber_check_tags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:59,33'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:67,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:73,9'
          Dst:             ber_check_tags
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:78,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:108,6'
          Dst:             asn_INTEGER2long
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:120,2'
          Dst:             ASN_DEBUG
    - functionName:    NativeInteger_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/NativeInteger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ASN_DEBUG
        - Memory_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:224,2'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/NativeInteger.c:228,3'
          Dst:             Memory_free
    - functionName:    xer_skip_unknown
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/xer_decoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 363
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          73
      EdgeCount:       27
      CyclomaticComplexity: 15
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/xer_decoder.c:346,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    xer_is_whitespace
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/xer_decoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          64
      EdgeCount:       25
      CyclomaticComplexity: 14
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/xer_decoder.c:324,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    xer_decode_general
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/xer_decoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         122
      ICount:          610
      EdgeCount:       141
      CyclomaticComplexity: 21
      functionsReached:
        - ASN_DEBUG
        - xer_check_tag
        - xer_next_token
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/xer_decoder.c:233,3'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/xer_decoder.c:238,4'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/xer_decoder.c:270,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/xer_decoder.c:222,21'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/xer_decoder.c:231,13'
          Dst:             xer_next_token
        - Src:             'src/mms/iso_mms/asn1c/xer_decoder.c:234,12'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/xer_decoder.c:236,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/xer_decoder.c:251,6'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/xer_decoder.c:251,6'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/xer_decoder.c:262,9'
          Dst:             xer_check_tag
        - Src:             'src/mms/iso_mms/asn1c/xer_decoder.c:274,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/xer_decoder.c:277,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/xer_decoder.c:287,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/xer_decoder.c:301,6'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/xer_decoder.c:310,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/xer_decoder.c:314,2'
          Dst:             ASN_DEBUG
    - functionName:    ASN_DEBUG
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    xer_next_token
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/xer_decoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          97
      EdgeCount:       18
      CyclomaticComplexity: 3
      functionsReached:
        - pxml_parse
        - xer__token_cb
      functionUses:    4
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/xer_decoder.c:82,2'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/xer_decoder.c:69,8'
          Dst:             pxml_parse
        - Src:             'src/mms/iso_mms/asn1c/xer_decoder.c:69,8'
          Dst:             xer__token_cb
    - functionName:    xer_check_tag
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/xer_decoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          289
      EdgeCount:       67
      CyclomaticComplexity: 17
      functionsReached:
        - ASN_DEBUG
      functionUses:    8
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/xer_decoder.c:145,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/xer_decoder.c:112,3'
          Dst:             ASN_DEBUG
    - functionName:    xer__token_cb
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/xer_decoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    xer_decode
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/xer_decoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pxml_parse
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/xer_support.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         148
      ICount:          796
      EdgeCount:       183
      CyclomaticComplexity: 37
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/xer_support.c:96,4'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/xer_support.c:119,3'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/xer_support.c:140,3'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/xer_support.c:218,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    asn_DFL_2_set_0
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/DeleteNamedVariableListRequest.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          84
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - Memory_calloc
        - asn_INTEGER2long
        - asn_long2INTEGER
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/DeleteNamedVariableListRequest.c:17,17'
          Dst:             Memory_calloc
        - Src:             'src/mms/iso_mms/asn1c/DeleteNamedVariableListRequest.c:23,10'
          Dst:             asn_long2INTEGER
        - Src:             'src/mms/iso_mms/asn1c/DeleteNamedVariableListRequest.c:27,6'
          Dst:             asn_INTEGER2long
    - functionName:    ConcludeRequestPDU_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ConcludeRequestPDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ConcludeRequestPDU_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ConcludeRequestPDU.c:81,2'
          Dst:             ConcludeRequestPDU_1_inherit_TYPE_descriptor
    - functionName:    ConcludeRequestPDU_1_inherit_TYPE_descriptor
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ConcludeRequestPDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          67
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ConcludeRequestPDU_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ConcludeRequestPDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ConcludeRequestPDU_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ConcludeRequestPDU.c:73,2'
          Dst:             ConcludeRequestPDU_1_inherit_TYPE_descriptor
    - functionName:    ConcludeRequestPDU_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ConcludeRequestPDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ConcludeRequestPDU_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ConcludeRequestPDU.c:66,2'
          Dst:             ConcludeRequestPDU_1_inherit_TYPE_descriptor
    - functionName:    ConcludeRequestPDU_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ConcludeRequestPDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ConcludeRequestPDU_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ConcludeRequestPDU.c:58,2'
          Dst:             ConcludeRequestPDU_1_inherit_TYPE_descriptor
    - functionName:    ConcludeRequestPDU_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ConcludeRequestPDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ConcludeRequestPDU_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ConcludeRequestPDU.c:51,2'
          Dst:             ConcludeRequestPDU_1_inherit_TYPE_descriptor
    - functionName:    ConcludeRequestPDU_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ConcludeRequestPDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ConcludeRequestPDU_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/ConcludeRequestPDU.c:44,2'
          Dst:             ConcludeRequestPDU_1_inherit_TYPE_descriptor
    - functionName:    ConcludeRequestPDU_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/ConcludeRequestPDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 17
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memb_concludeErrorPDU_constraint_3
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/RejectPDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          95
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memb_concludeResponsePDU_constraint_3
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/RejectPDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          95
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memb_concludeRequestPDU_constraint_3
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/RejectPDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          95
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memb_unconfirmedPDU_constraint_3
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/RejectPDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          95
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memb_confirmedErrorPDU_constraint_3
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/RejectPDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          95
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memb_confirmedResponsePDU_constraint_3
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/RejectPDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          95
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memb_confirmedRequestPDU_constraint_3
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/RejectPDU.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          95
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Unsigned8_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Unsigned8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Unsigned8_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Unsigned8.c:98,2'
          Dst:             Unsigned8_1_inherit_TYPE_descriptor
    - functionName:    Unsigned8_1_inherit_TYPE_descriptor
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Unsigned8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          67
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Unsigned8_decode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Unsigned8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Unsigned8_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Unsigned8.c:90,2'
          Dst:             Unsigned8_1_inherit_TYPE_descriptor
    - functionName:    Unsigned8_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Unsigned8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Unsigned8_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Unsigned8.c:83,2'
          Dst:             Unsigned8_1_inherit_TYPE_descriptor
    - functionName:    Unsigned8_decode_ber
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Unsigned8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Unsigned8_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Unsigned8.c:75,2'
          Dst:             Unsigned8_1_inherit_TYPE_descriptor
    - functionName:    Unsigned8_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Unsigned8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Unsigned8_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Unsigned8.c:68,2'
          Dst:             Unsigned8_1_inherit_TYPE_descriptor
    - functionName:    Unsigned8_free
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Unsigned8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Unsigned8_1_inherit_TYPE_descriptor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/Unsigned8.c:61,2'
          Dst:             Unsigned8_1_inherit_TYPE_descriptor
    - functionName:    Unsigned8_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/Unsigned8.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          95
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ASN_DEBUG_f
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_TYPE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fprintf
        - vfprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_TYPE.c:74,2'
          Dst:             vfprintf
        - Src:             'src/mms/iso_mms/asn1c/constr_TYPE.c:75,2'
          Dst:             fprintf
    - functionName:    vfprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _print2fp
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_TYPE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fwrite
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_TYPE.c:59,5'
          Dst:             fwrite
    - functionName:    fwrite
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asn_fprint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_TYPE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          84
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - _print2fp
        - fflush
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/constr_TYPE.c:39,3'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/constr_TYPE.c:44,5'
          Dst:             _print2fp
        - Src:             'src/mms/iso_mms/asn1c/constr_TYPE.c:48,5'
          Dst:             _print2fp
        - Src:             'src/mms/iso_mms/asn1c/constr_TYPE.c:51,9'
          Dst:             fflush
    - functionName:    fflush
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asn_TYPE_outmost_tag
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_TYPE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          60
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_asn1c_environment_version
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/constr_TYPE.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12
      functionLinenumberEnd: 12
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asn_GT2time_prec
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/GeneralizedTime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 328
      functionLinenumberEnd: 355
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          119
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - asn_GT2time_frac
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:333,10'
          Dst:             asn_GT2time_frac
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:335,10'
          Dst:             asn_GT2time_frac
    - functionName:    asn_GT2time_frac
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/GeneralizedTime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 358
      functionLinenumberEnd: 592
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         267
      ICount:          1306
      EdgeCount:       324
      CyclomaticComplexity: 59
      functionsReached:
        - __errno_location
        - gmtime_r
        - localtime_r
        - mktime
      functionUses:    5
      BranchProfiles:
        - Branch String:   'src/mms/iso_mms/asn1c/GeneralizedTime.c:418,2'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/GeneralizedTime.c:440,2'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/GeneralizedTime.c:462,2'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/GeneralizedTime.c:470,4'
          Branch Sides:    []
        - Branch String:   'src/mms/iso_mms/asn1c/GeneralizedTime.c:490,2'
          Branch Sides:    []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:371,3'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:379,3'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:401,2'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:402,2'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:403,2'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:404,2'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:405,2'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:406,2'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:407,2'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:408,2'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:409,2'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:410,2'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:422,20'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:423,3'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:430,3'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:444,20'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:445,3'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:452,3'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:496,3'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:504,3'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:508,2'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:509,2'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:516,3'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:517,3'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:519,3'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:541,3'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:562,10'
          Dst:             mktime
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:565,3'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:574,8'
          Dst:             gmtime_r
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:575,6'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:580,7'
          Dst:             localtime_r
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:581,5'
          Dst:             __errno_location
    - functionName:    localtime_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ASN_DEBUG
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/asn_internal.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asn_GT2time
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/GeneralizedTime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 323
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - asn_GT2time_frac
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:324,9'
          Dst:             asn_GT2time_frac
    - functionName:    GeneralizedTime_encode_xer
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/GeneralizedTime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          127
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - ASN_DEBUG
        - OCTET_STRING_encode_xer_utf8
        - __errno_location
        - asn_GT2time_frac
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:271,3'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:272,6'
          Dst:             asn_GT2time_frac
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:274,8'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:275,4'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:280,11'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:282,8'
          Dst:             OCTET_STRING_encode_xer_utf8
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:287,10'
          Dst:             OCTET_STRING_encode_xer_utf8
    - functionName:    GeneralizedTime_print
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/GeneralizedTime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 296
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          123
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - asn_GT2time
        - snprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:307,3'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:308,6'
          Dst:             asn_GT2time
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:308,39'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:311,9'
          Dst:             snprintf
    - functionName:    GeneralizedTime_constraint
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/GeneralizedTime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          74
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - asn_GT2time
        - strerror
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:214,2'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:215,9'
          Dst:             asn_GT2time
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:216,19'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:219,23'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:219,14'
          Dst:             strerror
    - functionName:    GeneralizedTime_encode_der
      functionSourceFile: '/src/libiec61850/src/mms/iso_mms/asn1c/GeneralizedTime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          116
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - ASN_DEBUG
        - Memory_free
        - OCTET_STRING_encode_der
        - __errno_location
        - asn_GT2time_frac
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:239,2'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:240,9'
          Dst:             asn_GT2time_frac
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:241,19'
          Dst:             __errno_location
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:243,3'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:248,10'
          Dst:             ASN_DEBUG
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:250,10'
          Dst:             OCTET_STRING_encode_der
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:252,2'
          Dst:             Memory_free
        - Src:             'src/mms/iso_mms/asn1c/GeneralizedTime.c:253,2'
          Dst:             Memory_free
    - functionName:    strerror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    GoosePublisher_publishAndDump
      functionSourceFile: '/src/libiec61850/src/goose/goose_publisher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 551
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - GoosePublisher_publish
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/goose/goose_publisher.c:538,14'
          Dst:             GoosePublisher_publish
    - functionName:    GoosePublisher_publish
      functionSourceFile: '/src/libiec61850/src/goose/goose_publisher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 490
      functionLinenumberEnd: 533
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          137
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - Ethernet_sendPacket
        - createGoosePayload
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/goose/goose_publisher.c:495,27'
          Dst:             createGoosePayload
        - Src:             'src/goose/goose_publisher.c:515,9'
          Dst:             Ethernet_sendPacket
    - functionName:    createGoosePayload
      functionSourceFile: '/src/libiec61850/src/goose/goose_publisher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 486
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          326
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - BerEncoder_UInt32determineEncodedSize
        - BerEncoder_determineEncodedStringSize
        - BerEncoder_determineLengthSize
        - BerEncoder_encodeBoolean
        - BerEncoder_encodeOctetString
        - BerEncoder_encodeStringWithTag
        - BerEncoder_encodeTL
        - BerEncoder_encodeUInt32WithTL
        - LinkedList_getNext
        - LinkedList_size
        - MmsValue_encodeMmsData
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/goose/goose_publisher.c:363,23'
          Dst:             BerEncoder_determineEncodedStringSize
        - Src:             'src/goose/goose_publisher.c:367,27'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/goose/goose_publisher.c:369,23'
          Dst:             BerEncoder_determineEncodedStringSize
        - Src:             'src/goose/goose_publisher.c:372,27'
          Dst:             BerEncoder_determineEncodedStringSize
        - Src:             'src/goose/goose_publisher.c:374,27'
          Dst:             BerEncoder_determineEncodedStringSize
        - Src:             'src/goose/goose_publisher.c:378,27'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/goose/goose_publisher.c:380,27'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/goose/goose_publisher.c:382,27'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/goose/goose_publisher.c:386,39'
          Dst:             LinkedList_size
        - Src:             'src/goose/goose_publisher.c:388,27'
          Dst:             BerEncoder_UInt32determineEncodedSize
        - Src:             'src/goose/goose_publisher.c:392,26'
          Dst:             LinkedList_getNext
        - Src:             'src/goose/goose_publisher.c:400,28'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/goose/goose_publisher.c:409,19'
          Dst:             LinkedList_getNext
        - Src:             'src/goose/goose_publisher.c:412,42'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/goose/goose_publisher.c:416,32'
          Dst:             BerEncoder_determineLengthSize
        - Src:             'src/goose/goose_publisher.c:426,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/goose/goose_publisher.c:429,14'
          Dst:             BerEncoder_encodeStringWithTag
        - Src:             'src/goose/goose_publisher.c:432,14'
          Dst:             BerEncoder_encodeUInt32WithTL
        - Src:             'src/goose/goose_publisher.c:435,14'
          Dst:             BerEncoder_encodeStringWithTag
        - Src:             'src/goose/goose_publisher.c:439,18'
          Dst:             BerEncoder_encodeStringWithTag
        - Src:             'src/goose/goose_publisher.c:441,18'
          Dst:             BerEncoder_encodeStringWithTag
        - Src:             'src/goose/goose_publisher.c:444,14'
          Dst:             BerEncoder_encodeOctetString
        - Src:             'src/goose/goose_publisher.c:447,14'
          Dst:             BerEncoder_encodeUInt32WithTL
        - Src:             'src/goose/goose_publisher.c:450,14'
          Dst:             BerEncoder_encodeUInt32WithTL
        - Src:             'src/goose/goose_publisher.c:453,14'
          Dst:             BerEncoder_encodeBoolean
        - Src:             'src/goose/goose_publisher.c:456,14'
          Dst:             BerEncoder_encodeUInt32WithTL
        - Src:             'src/goose/goose_publisher.c:459,14'
          Dst:             BerEncoder_encodeBoolean
        - Src:             'src/goose/goose_publisher.c:462,14'
          Dst:             BerEncoder_encodeUInt32WithTL
        - Src:             'src/goose/goose_publisher.c:465,14'
          Dst:             BerEncoder_encodeTL
        - Src:             'src/goose/goose_publisher.c:468,15'
          Dst:             LinkedList_getNext
        - Src:             'src/goose/goose_publisher.c:476,22'
          Dst:             MmsValue_encodeMmsData
        - Src:             'src/goose/goose_publisher.c:482,19'
          Dst:             LinkedList_getNext
    - functionName:    GoosePublisher_setTimeAllowedToLive
      functionSourceFile: '/src/libiec61850/src/goose/goose_publisher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    GoosePublisher_increaseStNum
      functionSourceFile: '/src/libiec61850/src/goose/goose_publisher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Hal_getTimeInMs
        - MmsValue_setUtcTimeMs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/goose/goose_publisher.c:227,28'
          Dst:             Hal_getTimeInMs
        - Src:             'src/goose/goose_publisher.c:229,5'
          Dst:             MmsValue_setUtcTimeMs
    - functionName:    GoosePublisher_setNeedsCommission
      functionSourceFile: '/src/libiec61850/src/goose/goose_publisher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    GoosePublisher_setSqNum
      functionSourceFile: '/src/libiec61850/src/goose/goose_publisher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    GoosePublisher_setStNum
      functionSourceFile: '/src/libiec61850/src/goose/goose_publisher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    GoosePublisher_setSimulation
      functionSourceFile: '/src/libiec61850/src/goose/goose_publisher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    GoosePublisher_setConfRev
      functionSourceFile: '/src/libiec61850/src/goose/goose_publisher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    GoosePublisher_setDataSetRef
      functionSourceFile: '/src/libiec61850/src/goose/goose_publisher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
        - StringUtils_copyString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/goose/goose_publisher.c:189,9'
          Dst:             Memory_free
        - Src:             'src/goose/goose_publisher.c:191,24'
          Dst:             StringUtils_copyString
    - functionName:    GoosePublisher_setGoCbRef
      functionSourceFile: '/src/libiec61850/src/goose/goose_publisher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
        - StringUtils_copyString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/goose/goose_publisher.c:180,9'
          Dst:             Memory_free
        - Src:             'src/goose/goose_publisher.c:182,21'
          Dst:             StringUtils_copyString
    - functionName:    GoosePublisher_setGoID
      functionSourceFile: '/src/libiec61850/src/goose/goose_publisher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
        - StringUtils_copyString
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/goose/goose_publisher.c:171,9'
          Dst:             Memory_free
        - Src:             'src/goose/goose_publisher.c:173,18'
          Dst:             StringUtils_copyString
    - functionName:    GoosePublisher_create
      functionSourceFile: '/src/libiec61850/src/goose/goose_publisher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - GoosePublisher_createEx
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/goose/goose_publisher.c:133,12'
          Dst:             GoosePublisher_createEx
    - functionName:    GoosePublisher_createEx
      functionSourceFile: '/src/libiec61850/src/goose/goose_publisher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - GoosePublisher_destroy
        - GoosePublisher_reset
        - Hal_getTimeInMs
        - Memory_calloc
        - MmsValue_newUtcTimeByMsTime
        - prepareGooseBuffer
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/goose/goose_publisher.c:110,44'
          Dst:             Memory_calloc
        - Src:             'src/goose/goose_publisher.c:114,13'
          Dst:             prepareGooseBuffer
        - Src:             'src/goose/goose_publisher.c:116,59'
          Dst:             Hal_getTimeInMs
        - Src:             'src/goose/goose_publisher.c:116,31'
          Dst:             MmsValue_newUtcTimeByMsTime
        - Src:             'src/goose/goose_publisher.c:118,13'
          Dst:             GoosePublisher_reset
        - Src:             'src/goose/goose_publisher.c:122,13'
          Dst:             GoosePublisher_destroy
    - functionName:    prepareGooseBuffer
      functionSourceFile: '/src/libiec61850/src/goose/goose_publisher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          313
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - Ethernet_createSocket
        - Ethernet_getInterfaceMACAddress
        - Memory_malloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/goose/goose_publisher.c:261,9'
          Dst:             Ethernet_getInterfaceMACAddress
        - Src:             'src/goose/goose_publisher.c:263,9'
          Dst:             Ethernet_getInterfaceMACAddress
        - Src:             'src/goose/goose_publisher.c:288,32'
          Dst:             Ethernet_createSocket
        - Src:             'src/goose/goose_publisher.c:290,32'
          Dst:             Ethernet_createSocket
        - Src:             'src/goose/goose_publisher.c:294,35'
          Dst:             Memory_malloc
    - functionName:    GoosePublisher_reset
      functionSourceFile: '/src/libiec61850/src/goose/goose_publisher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    GoosePublisher_destroy
      functionSourceFile: '/src/libiec61850/src/goose/goose_publisher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          112
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - Ethernet_destroySocket
        - Memory_free
        - MmsValue_delete
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/goose/goose_publisher.c:145,13'
          Dst:             Ethernet_destroySocket
        - Src:             'src/goose/goose_publisher.c:149,9'
          Dst:             MmsValue_delete
        - Src:             'src/goose/goose_publisher.c:152,13'
          Dst:             Memory_free
        - Src:             'src/goose/goose_publisher.c:155,13'
          Dst:             Memory_free
        - Src:             'src/goose/goose_publisher.c:158,13'
          Dst:             Memory_free
        - Src:             'src/goose/goose_publisher.c:161,13'
          Dst:             Memory_free
        - Src:             'src/goose/goose_publisher.c:163,9'
          Dst:             Memory_free
    - functionName:    UdpSocket_receiveFrom
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 989
      functionLinenumberEnd: 1033
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          139
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - inet_ntop
        - ntohs
        - recvfrom
        - snprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:995,18'
          Dst:             recvfrom
        - Src:             'hal/socket/linux/socket_linux.c:1012,20'
          Dst:             ntohs
        - Src:             'hal/socket/linux/socket_linux.c:1013,13'
          Dst:             inet_ntop
        - Src:             'hal/socket/linux/socket_linux.c:1019,20'
          Dst:             ntohs
        - Src:             'hal/socket/linux/socket_linux.c:1020,13'
          Dst:             inet_ntop
        - Src:             'hal/socket/linux/socket_linux.c:1027,13'
          Dst:             snprintf
        - Src:             'hal/socket/linux/socket_linux.c:1029,13'
          Dst:             snprintf
    - functionName:    recvfrom
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ntohs
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    inet_ntop
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    UdpSocket_sendTo
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 954
      functionLinenumberEnd: 985
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          71
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - prepareAddress
        - sendto
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:958,10'
          Dst:             prepareAddress
        - Src:             'hal/socket/linux/socket_linux.c:967,18'
          Dst:             sendto
    - functionName:    prepareAddress
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          87
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - freeaddrinfo
        - getaddrinfo
        - htonl
        - htons
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:246,18'
          Dst:             getaddrinfo
        - Src:             'hal/socket/linux/socket_linux.c:259,9'
          Dst:             freeaddrinfo
        - Src:             'hal/socket/linux/socket_linux.c:262,37'
          Dst:             htonl
        - Src:             'hal/socket/linux/socket_linux.c:269,26'
          Dst:             htons
    - functionName:    sendto
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getaddrinfo
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    freeaddrinfo
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htonl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htons
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    UdpSocket_bind
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 925
      functionLinenumberEnd: 950
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          63
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - bind
        - close
        - prepareAddress
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:929,10'
          Dst:             prepareAddress
        - Src:             'hal/socket/linux/socket_linux.c:931,9'
          Dst:             close
        - Src:             'hal/socket/linux/socket_linux.c:936,18'
          Dst:             bind
        - Src:             'hal/socket/linux/socket_linux.c:943,9'
          Dst:             close
    - functionName:    close
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bind
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    UdpSocket_setMulticastTtl
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 898
      functionLinenumberEnd: 921
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          75
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - printf
        - setsockopt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:901,13'
          Dst:             setsockopt
        - Src:             'hal/socket/linux/socket_linux.c:903,78'
          Dst:             __errno_location
        - Src:             'hal/socket/linux/socket_linux.c:903,13'
          Dst:             printf
        - Src:             'hal/socket/linux/socket_linux.c:911,13'
          Dst:             setsockopt
        - Src:             'hal/socket/linux/socket_linux.c:913,84'
          Dst:             __errno_location
        - Src:             'hal/socket/linux/socket_linux.c:913,13'
          Dst:             printf
    - functionName:    setsockopt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    UdpSocket_addGroupMembership
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 849
      functionLinenumberEnd: 894
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          110
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - htonl
        - inet_aton
        - inet_pton
        - printf
        - setsockopt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:854,14'
          Dst:             inet_aton
        - Src:             'hal/socket/linux/socket_linux.c:856,13'
          Dst:             printf
        - Src:             'hal/socket/linux/socket_linux.c:861,41'
          Dst:             htonl
        - Src:             'hal/socket/linux/socket_linux.c:863,17'
          Dst:             setsockopt
        - Src:             'hal/socket/linux/socket_linux.c:865,84'
          Dst:             __errno_location
        - Src:             'hal/socket/linux/socket_linux.c:865,17'
          Dst:             printf
        - Src:             'hal/socket/linux/socket_linux.c:876,13'
          Dst:             inet_pton
        - Src:             'hal/socket/linux/socket_linux.c:878,80'
          Dst:             __errno_location
        - Src:             'hal/socket/linux/socket_linux.c:878,13'
          Dst:             printf
        - Src:             'hal/socket/linux/socket_linux.c:884,13'
          Dst:             setsockopt
        - Src:             'hal/socket/linux/socket_linux.c:886,80'
          Dst:             __errno_location
        - Src:             'hal/socket/linux/socket_linux.c:886,13'
          Dst:             printf
    - functionName:    inet_aton
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    inet_pton
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    UdpSocket_createIpV6
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 843
      functionLinenumberEnd: 844
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - UdpSocket_createUsingNamespace
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:844,12'
          Dst:             UdpSocket_createUsingNamespace
    - functionName:    UdpSocket_createUsingNamespace
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 804
      functionLinenumberEnd: 832
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_malloc
        - close
        - socket
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:807,16'
          Dst:             socket
        - Src:             'hal/socket/linux/socket_linux.c:811,27'
          Dst:             Memory_malloc
        - Src:             'hal/socket/linux/socket_linux.c:823,13'
          Dst:             close
    - functionName:    socket
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    UdpSocket_create
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 837
      functionLinenumberEnd: 838
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - UdpSocket_createUsingNamespace
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:838,12'
          Dst:             UdpSocket_createUsingNamespace
    - functionName:    Socket_destroy
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 790
      functionLinenumberEnd: 800
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_free
        - Thread_sleep
        - closeAndShutdownSocket
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:795,5'
          Dst:             closeAndShutdownSocket
        - Src:             'hal/socket/linux/socket_linux.c:797,5'
          Dst:             Thread_sleep
        - Src:             'hal/socket/linux/socket_linux.c:799,5'
          Dst:             Memory_free
    - functionName:    closeAndShutdownSocket
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 423
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          53
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - close
        - shutdown
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:407,22'
          Dst:             shutdown
        - Src:             'hal/socket/linux/socket_linux.c:415,18'
          Dst:             close
    - functionName:    shutdown
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Socket_write
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 765
      functionLinenumberEnd: 786
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          66
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - send
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:770,18'
          Dst:             send
        - Src:             'hal/socket/linux/socket_linux.c:774,13'
          Dst:             __errno_location
    - functionName:    send
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Socket_read
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 730
      functionLinenumberEnd: 761
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          82
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - recv
      functionUses:    1
      BranchProfiles:
        - Branch String:   'hal/socket/linux/socket_linux.c:743,9'
          Branch Sides:    []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:734,22'
          Dst:             recv
        - Src:             'hal/socket/linux/socket_linux.c:741,21'
          Dst:             __errno_location
    - functionName:    recv
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Socket_getPeerAddressStatic
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 685
      functionLinenumberEnd: 726
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - getpeername
        - inet_ntop
        - ntohs
        - sprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:690,9'
          Dst:             getpeername
        - Src:             'hal/socket/linux/socket_linux.c:706,16'
          Dst:             ntohs
        - Src:             'hal/socket/linux/socket_linux.c:707,9'
          Dst:             inet_ntop
        - Src:             'hal/socket/linux/socket_linux.c:713,16'
          Dst:             ntohs
        - Src:             'hal/socket/linux/socket_linux.c:714,9'
          Dst:             inet_ntop
        - Src:             'hal/socket/linux/socket_linux.c:721,9'
          Dst:             sprintf
        - Src:             'hal/socket/linux/socket_linux.c:723,9'
          Dst:             sprintf
    - functionName:    getpeername
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Socket_getLocalAddress
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 671
      functionLinenumberEnd: 681
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - convertAddressToStr
        - getsockname
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:675,9'
          Dst:             getsockname
        - Src:             'hal/socket/linux/socket_linux.c:677,16'
          Dst:             convertAddressToStr
    - functionName:    getsockname
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    convertAddressToStr
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 622
      functionLinenumberEnd: 653
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          102
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - Memory_malloc
        - inet_ntop
        - ntohs
        - sprintf
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:631,16'
          Dst:             ntohs
        - Src:             'hal/socket/linux/socket_linux.c:632,9'
          Dst:             inet_ntop
        - Src:             'hal/socket/linux/socket_linux.c:638,16'
          Dst:             ntohs
        - Src:             'hal/socket/linux/socket_linux.c:639,9'
          Dst:             inet_ntop
        - Src:             'hal/socket/linux/socket_linux.c:645,37'
          Dst:             strlen
        - Src:             'hal/socket/linux/socket_linux.c:645,37'
          Dst:             Memory_malloc
        - Src:             'hal/socket/linux/socket_linux.c:648,9'
          Dst:             sprintf
        - Src:             'hal/socket/linux/socket_linux.c:650,9'
          Dst:             sprintf
    - functionName:    Socket_getPeerAddress
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 657
      functionLinenumberEnd: 667
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - convertAddressToStr
        - getpeername
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:661,9'
          Dst:             getpeername
        - Src:             'hal/socket/linux/socket_linux.c:663,16'
          Dst:             convertAddressToStr
    - functionName:    Socket_connect
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 587
      functionLinenumberEnd: 618
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          94
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - Socket_connectAsync
        - close
        - getsockopt
        - poll
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:588,9'
          Dst:             Socket_connectAsync
        - Src:             'hal/socket/linux/socket_linux.c:596,18'
          Dst:             poll
        - Src:             'hal/socket/linux/socket_linux.c:606,13'
          Dst:             getsockopt
        - Src:             'hal/socket/linux/socket_linux.c:614,5'
          Dst:             close
    - functionName:    Socket_connectAsync
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 516
      functionLinenumberEnd: 546
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          77
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - activateTcpNoDelay
        - close
        - connect
        - fcntl
        - prepareAddress
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:522,10'
          Dst:             prepareAddress
        - Src:             'hal/socket/linux/socket_linux.c:525,5'
          Dst:             activateTcpNoDelay
        - Src:             'hal/socket/linux/socket_linux.c:527,5'
          Dst:             fcntl
        - Src:             'hal/socket/linux/socket_linux.c:529,9'
          Dst:             connect
        - Src:             'hal/socket/linux/socket_linux.c:532,13'
          Dst:             __errno_location
        - Src:             'hal/socket/linux/socket_linux.c:534,17'
          Dst:             close
    - functionName:    poll
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getsockopt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    activateTcpNoDelay
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - setsockopt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:287,5'
          Dst:             setsockopt
    - functionName:    fcntl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    connect
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Socket_checkAsyncConnectState
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 583
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          76
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - getsockopt
        - poll
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:556,18'
          Dst:             poll
        - Src:             'hal/socket/linux/socket_linux.c:566,13'
          Dst:             getsockopt
    - functionName:    Socket_bind
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 492
      functionLinenumberEnd: 512
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - bind
        - close
        - prepareAddress
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:495,10'
          Dst:             prepareAddress
        - Src:             'hal/socket/linux/socket_linux.c:498,18'
          Dst:             bind
        - Src:             'hal/socket/linux/socket_linux.c:505,9'
          Dst:             close
    - functionName:    Socket_setConnectTimeout
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 486
      functionLinenumberEnd: 488
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    TcpSocket_create
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 441
      functionLinenumberEnd: 481
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         12
      ICount:          63
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - Memory_malloc
        - close
        - setsockopt
        - socket
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:444,16'
          Dst:             socket
        - Src:             'hal/socket/linux/socket_linux.c:448,24'
          Dst:             Memory_malloc
        - Src:             'hal/socket/linux/socket_linux.c:457,26'
          Dst:             setsockopt
        - Src:             'hal/socket/linux/socket_linux.c:469,13'
          Dst:             close
    - functionName:    ServerSocket_destroy
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 437
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_free
        - Thread_sleep
        - closeAndShutdownSocket
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:432,5'
          Dst:             closeAndShutdownSocket
        - Src:             'hal/socket/linux/socket_linux.c:434,5'
          Dst:             Thread_sleep
        - Src:             'hal/socket/linux/socket_linux.c:436,5'
          Dst:             Memory_free
    - functionName:    ServerSocket_setBacklog
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 393
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ServerSocket_accept
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_calloc
        - accept
        - activateTcpNoDelay
        - close
        - setSocketNonBlocking
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:359,10'
          Dst:             accept
        - Src:             'hal/socket/linux/socket_linux.c:363,29'
          Dst:             Memory_calloc
        - Src:             'hal/socket/linux/socket_linux.c:369,13'
          Dst:             setSocketNonBlocking
        - Src:             'hal/socket/linux/socket_linux.c:371,13'
          Dst:             activateTcpNoDelay
        - Src:             'hal/socket/linux/socket_linux.c:376,13'
          Dst:             close
    - functionName:    accept
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setSocketNonBlocking
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fcntl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:278,17'
          Dst:             fcntl
        - Src:             'hal/socket/linux/socket_linux.c:279,5'
          Dst:             fcntl
    - functionName:    ServerSocket_listen
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 343
      functionLinenumberEnd: 349
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - listen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:344,9'
          Dst:             listen
    - functionName:    listen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    TcpServerSocket_create
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          94
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - Memory_malloc
        - bind
        - close
        - prepareAddress
        - setSocketNonBlocking
        - setsockopt
        - socket
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:297,15'
          Dst:             socket
        - Src:             'hal/socket/linux/socket_linux.c:301,14'
          Dst:             prepareAddress
        - Src:             'hal/socket/linux/socket_linux.c:303,13'
          Dst:             close
        - Src:             'hal/socket/linux/socket_linux.c:308,9'
          Dst:             setsockopt
        - Src:             'hal/socket/linux/socket_linux.c:312,22'
          Dst:             setsockopt
        - Src:             'hal/socket/linux/socket_linux.c:323,13'
          Dst:             bind
        - Src:             'hal/socket/linux/socket_linux.c:325,42'
          Dst:             Memory_malloc
        - Src:             'hal/socket/linux/socket_linux.c:329,13'
          Dst:             setSocketNonBlocking
        - Src:             'hal/socket/linux/socket_linux.c:333,13'
          Dst:             close
    - functionName:    Socket_activateTcpKeepAlive
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          93
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - setsockopt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:199,9'
          Dst:             setsockopt
        - Src:             'hal/socket/linux/socket_linux.c:207,9'
          Dst:             setsockopt
        - Src:             'hal/socket/linux/socket_linux.c:214,9'
          Dst:             setsockopt
        - Src:             'hal/socket/linux/socket_linux.c:221,9'
          Dst:             setsockopt
    - functionName:    Handleset_destroy
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          57
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - LinkedList_destroyStatic
        - Memory_free
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:181,13'
          Dst:             LinkedList_destroyStatic
        - Src:             'hal/socket/linux/socket_linux.c:184,13'
          Dst:             Memory_free
        - Src:             'hal/socket/linux/socket_linux.c:186,9'
          Dst:             Memory_free
    - functionName:    Handleset_waitReady
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          207
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - LinkedList_get
        - LinkedList_getData
        - LinkedList_size
        - Memory_calloc
        - Memory_free
        - __errno_location
        - poll
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:122,13'
          Dst:             Memory_free
        - Src:             'hal/socket/linux/socket_linux.c:126,22'
          Dst:             LinkedList_size
        - Src:             'hal/socket/linux/socket_linux.c:128,21'
          Dst:             Memory_calloc
        - Src:             'hal/socket/linux/socket_linux.c:134,35'
          Dst:             LinkedList_get
        - Src:             'hal/socket/linux/socket_linux.c:138,39'
          Dst:             LinkedList_getData
        - Src:             'hal/socket/linux/socket_linux.c:153,22'
          Dst:             poll
        - Src:             'hal/socket/linux/socket_linux.c:155,29'
          Dst:             __errno_location
    - functionName:    Handleset_removeSocket
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          50
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - LinkedList_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:109,9'
          Dst:             LinkedList_remove
    - functionName:    Handleset_addSocket
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          51
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - LinkedList_add
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:99,9'
          Dst:             LinkedList_add
    - functionName:    Handleset_reset
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - LinkedList_create
        - LinkedList_destroyStatic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:86,13'
          Dst:             LinkedList_destroyStatic
        - Src:             'hal/socket/linux/socket_linux.c:87,29'
          Dst:             LinkedList_create
    - functionName:    Handleset_new
      functionSourceFile: '/src/libiec61850/hal/socket/linux/socket_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - LinkedList_create
        - Memory_malloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/socket/linux/socket_linux.c:66,33'
          Dst:             Memory_malloc
        - Src:             'hal/socket/linux/socket_linux.c:70,25'
          Dst:             LinkedList_create
    - functionName:    Ethernet_isSupported
      functionSourceFile: '/src/libiec61850/hal/ethernet/linux/ethernet_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 387
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Ethernet_sendPacket
      functionSourceFile: '/src/libiec61850/hal/ethernet/linux/ethernet_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 369
      functionLinenumberEnd: 372
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sendto
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/ethernet/linux/ethernet_linux.c:370,5'
          Dst:             sendto
    - functionName:    Ethernet_receivePacket
      functionSourceFile: '/src/libiec61850/hal/ethernet/linux/ethernet_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 355
      functionLinenumberEnd: 365
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          63
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - bind
        - recvfrom
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/ethernet/linux/ethernet_linux.c:358,13'
          Dst:             bind
        - Src:             'hal/ethernet/linux/ethernet_linux.c:364,12'
          Dst:             recvfrom
    - functionName:    Ethernet_setProtocolFilter
      functionSourceFile: '/src/libiec61850/hal/ethernet/linux/ethernet_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 327
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - htons
        - setsockopt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/ethernet/linux/ethernet_linux.c:342,13'
          Dst:             setsockopt
        - Src:             'hal/ethernet/linux/ethernet_linux.c:348,44'
          Dst:             htons
    - functionName:    Ethernet_addMulticastAddress
      functionSourceFile: '/src/libiec61850/hal/ethernet/linux/ethernet_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          81
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - setsockopt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/ethernet/linux/ethernet_linux.c:316,15'
          Dst:             setsockopt
    - functionName:    Ethernet_setMode
      functionSourceFile: '/src/libiec61850/hal/ethernet/linux/ethernet_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 298
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          156
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached:
        - if_indextoname
        - ioctl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/ethernet/linux/ethernet_linux.c:240,17'
          Dst:             if_indextoname
        - Src:             'hal/ethernet/linux/ethernet_linux.c:247,17'
          Dst:             ioctl
        - Src:             'hal/ethernet/linux/ethernet_linux.c:255,17'
          Dst:             ioctl
        - Src:             'hal/ethernet/linux/ethernet_linux.c:267,17'
          Dst:             if_indextoname
        - Src:             'hal/ethernet/linux/ethernet_linux.c:274,17'
          Dst:             ioctl
        - Src:             'hal/ethernet/linux/ethernet_linux.c:282,17'
          Dst:             ioctl
    - functionName:    if_indextoname
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ioctl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Ethernet_destroySocket
      functionSourceFile: '/src/libiec61850/hal/ethernet/linux/ethernet_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 376
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
        - close
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/ethernet/linux/ethernet_linux.c:379,9'
          Dst:             close
        - Src:             'hal/ethernet/linux/ethernet_linux.c:380,9'
          Dst:             Memory_free
    - functionName:    getInterfaceIndex
      functionSourceFile: '/src/libiec61850/hal/ethernet/linux/ethernet_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ioctl
        - strncpy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/ethernet/linux/ethernet_linux.c:145,5'
          Dst:             strncpy
        - Src:             'hal/ethernet/linux/ethernet_linux.c:147,9'
          Dst:             ioctl
    - functionName:    Ethernet_createSocket
      functionSourceFile: '/src/libiec61850/hal/ethernet/linux/ethernet_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          121
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - Ethernet_destroySocket
        - Ethernet_setMode
        - Memory_calloc
        - Memory_free
        - getInterfaceIndex
        - htons
        - socket
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/ethernet/linux/ethernet_linux.c:185,27'
          Dst:             Memory_calloc
        - Src:             'hal/ethernet/linux/ethernet_linux.c:189,55'
          Dst:             htons
        - Src:             'hal/ethernet/linux/ethernet_linux.c:189,27'
          Dst:             socket
        - Src:             'hal/ethernet/linux/ethernet_linux.c:195,13'
          Dst:             Memory_free
        - Src:             'hal/ethernet/linux/ethernet_linux.c:200,44'
          Dst:             htons
        - Src:             'hal/ethernet/linux/ethernet_linux.c:202,22'
          Dst:             getInterfaceIndex
        - Src:             'hal/ethernet/linux/ethernet_linux.c:206,13'
          Dst:             Ethernet_destroySocket
        - Src:             'hal/ethernet/linux/ethernet_linux.c:224,9'
          Dst:             Ethernet_setMode
    - functionName:    Ethernet_getInterfaceMACAddress
      functionSourceFile: '/src/libiec61850/hal/ethernet/linux/ethernet_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          57
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - close
        - ioctl
        - socket
        - strncpy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/ethernet/linux/ethernet_linux.c:164,16'
          Dst:             socket
        - Src:             'hal/ethernet/linux/ethernet_linux.c:168,5'
          Dst:             strncpy
        - Src:             'hal/ethernet/linux/ethernet_linux.c:170,5'
          Dst:             ioctl
        - Src:             'hal/ethernet/linux/ethernet_linux.c:172,5'
          Dst:             close
    - functionName:    EthernetHandleSet_destroy
      functionSourceFile: '/src/libiec61850/hal/ethernet/linux/ethernet_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          41
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - Memory_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/ethernet/linux/ethernet_linux.c:135,9'
          Dst:             Memory_free
    - functionName:    EthernetHandleSet_waitReady
      functionSourceFile: '/src/libiec61850/hal/ethernet/linux/ethernet_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - poll
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/ethernet/linux/ethernet_linux.c:117,18'
          Dst:             poll
    - functionName:    EthernetHandleSet_removeSocket
      functionSourceFile: '/src/libiec61850/hal/ethernet/linux/ethernet_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EthernetHandleSet_addSocket
      functionSourceFile: '/src/libiec61850/hal/ethernet/linux/ethernet_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          83
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - realloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/ethernet/linux/ethernet_linux.c:78,37'
          Dst:             realloc
    - functionName:    realloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EthernetHandleSet_new
      functionSourceFile: '/src/libiec61850/hal/ethernet/linux/ethernet_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_malloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/ethernet/linux/ethernet_linux.c:61,49'
          Dst:             Memory_malloc
    - functionName:    Thread_sleep
      functionSourceFile: '/src/libiec61850/hal/thread/linux/thread_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - usleep
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/thread/linux/thread_linux.c:107,5'
          Dst:             usleep
    - functionName:    usleep
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Thread_destroy
      functionSourceFile: '/src/libiec61850/hal/thread/linux/thread_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_free
        - pthread_join
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/thread/linux/thread_linux.c:98,9'
          Dst:             pthread_join
        - Src:             'hal/thread/linux/thread_linux.c:101,5'
          Dst:             Memory_free
    - functionName:    pthread_join
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Thread_start
      functionSourceFile: '/src/libiec61850/hal/thread/linux/thread_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - destroyAutomaticThread
        - pthread_create
        - pthread_detach
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/thread/linux/thread_linux.c:85,9'
          Dst:             pthread_create
        - Src:             'hal/thread/linux/thread_linux.c:85,9'
          Dst:             destroyAutomaticThread
        - Src:             'hal/thread/linux/thread_linux.c:86,9'
          Dst:             pthread_detach
        - Src:             'hal/thread/linux/thread_linux.c:89,9'
          Dst:             pthread_create
    - functionName:    destroyAutomaticThread
      functionSourceFile: '/src/libiec61850/hal/thread/linux/thread_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_free
        - pthread_exit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/thread/linux/thread_linux.c:76,5'
          Dst:             Memory_free
        - Src:             'hal/thread/linux/thread_linux.c:78,5'
          Dst:             pthread_exit
    - functionName:    pthread_create
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_detach
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_exit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Thread_create
      functionSourceFile: '/src/libiec61850/hal/thread/linux/thread_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_malloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/thread/linux/thread_linux.c:57,30'
          Dst:             Memory_malloc
    - functionName:    Semaphore_destroy
      functionSourceFile: '/src/libiec61850/hal/thread/linux/thread_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_free
        - sem_destroy
      functionUses:    62
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/thread/linux/thread_linux.c:50,5'
          Dst:             sem_destroy
        - Src:             'hal/thread/linux/thread_linux.c:51,5'
          Dst:             Memory_free
    - functionName:    sem_destroy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Semaphore_post
      functionSourceFile: '/src/libiec61850/hal/thread/linux/thread_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sem_post
      functionUses:    155
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/thread/linux/thread_linux.c:44,5'
          Dst:             sem_post
    - functionName:    sem_post
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Semaphore_wait
      functionSourceFile: '/src/libiec61850/hal/thread/linux/thread_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sem_wait
      functionUses:    190
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/thread/linux/thread_linux.c:38,5'
          Dst:             sem_wait
    - functionName:    sem_wait
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Semaphore_create
      functionSourceFile: '/src/libiec61850/hal/thread/linux/thread_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_malloc
        - sem_init
      functionUses:    62
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/thread/linux/thread_linux.c:27,22'
          Dst:             Memory_malloc
        - Src:             'hal/thread/linux/thread_linux.c:29,5'
          Dst:             sem_init
    - functionName:    sem_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    FileSystem_closeDirectory
      functionSourceFile: '/src/libiec61850/hal/filesystem/linux/file_provider_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - Memory_free
        - closedir
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/filesystem/linux/file_provider_linux.c:151,5'
          Dst:             closedir
        - Src:             'hal/filesystem/linux/file_provider_linux.c:152,5'
          Dst:             Memory_free
    - functionName:    closedir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    FileSystem_readDirectory
      functionSourceFile: '/src/libiec61850/hal/filesystem/linux/file_provider_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          79
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - FileSystem_readDirectory
        - readdir
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/filesystem/linux/file_provider_linux.c:128,11'
          Dst:             readdir
        - Src:             'hal/filesystem/linux/file_provider_linux.c:132,20'
          Dst:             FileSystem_readDirectory
    - functionName:    readdir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    FileSystem_openDirectory
      functionSourceFile: '/src/libiec61850/hal/filesystem/linux/file_provider_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - Memory_malloc
        - opendir
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/filesystem/linux/file_provider_linux.c:111,22'
          Dst:             opendir
        - Src:             'hal/filesystem/linux/file_provider_linux.c:116,36'
          Dst:             Memory_malloc
    - functionName:    opendir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    FileSystem_getFileInfo
      functionSourceFile: '/src/libiec61850/hal/filesystem/linux/file_provider_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          65
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - stat
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/filesystem/linux/file_provider_linux.c:95,9'
          Dst:             stat
    - functionName:    stat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    FileSystem_renameFile
      functionSourceFile: '/src/libiec61850/hal/filesystem/linux/file_provider_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - rename
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/filesystem/linux/file_provider_linux.c:83,9'
          Dst:             rename
    - functionName:    rename
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    FileSystem_deleteFile
      functionSourceFile: '/src/libiec61850/hal/filesystem/linux/file_provider_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/filesystem/linux/file_provider_linux.c:74,9'
          Dst:             remove
    - functionName:    remove
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    FileSystem_closeFile
      functionSourceFile: '/src/libiec61850/hal/filesystem/linux/file_provider_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fclose
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/filesystem/linux/file_provider_linux.c:68,5'
          Dst:             fclose
    - functionName:    fclose
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    FileSystem_writeFile
      functionSourceFile: '/src/libiec61850/hal/filesystem/linux/file_provider_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fwrite
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/filesystem/linux/file_provider_linux.c:62,12'
          Dst:             fwrite
    - functionName:    FileSystem_readFile
      functionSourceFile: '/src/libiec61850/hal/filesystem/linux/file_provider_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fread
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/filesystem/linux/file_provider_linux.c:56,12'
          Dst:             fread
    - functionName:    fread
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    FileSystem_openFile
      functionSourceFile: '/src/libiec61850/hal/filesystem/linux/file_provider_linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fopen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/filesystem/linux/file_provider_linux.c:46,34'
          Dst:             fopen
        - Src:             'hal/filesystem/linux/file_provider_linux.c:48,34'
          Dst:             fopen
    - functionName:    fopen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Hal_getMonotonicTimeInNs
      functionSourceFile: '/src/libiec61850/hal/time/unix/time.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - clock_gettime
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/time/unix/time.c:74,9'
          Dst:             clock_gettime
    - functionName:    clock_gettime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Hal_getMonotonicTimeInMs
      functionSourceFile: '/src/libiec61850/hal/time/unix/time.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - clock_gettime
      functionUses:    38
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/time/unix/time.c:59,9'
          Dst:             clock_gettime
    - functionName:    Hal_setTimeInNs
      functionSourceFile: '/src/libiec61850/hal/time/unix/time.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - clock_settime
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/time/unix/time.c:45,9'
          Dst:             clock_settime
    - functionName:    clock_settime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Hal_getTimeInNs
      functionSourceFile: '/src/libiec61850/hal/time/unix/time.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - clock_gettime
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/time/unix/time.c:29,5'
          Dst:             clock_gettime
    - functionName:    Hal_getTimeInMs
      functionSourceFile: '/src/libiec61850/hal/time/unix/time.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gettimeofday
      functionUses:    27
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/time/unix/time.c:19,5'
          Dst:             gettimeofday
    - functionName:    gettimeofday
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Memory_free
      functionSourceFile: '/src/libiec61850/hal/memory/lib_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    364
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Memory_realloc
      functionSourceFile: '/src/libiec61850/hal/memory/lib_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - noMemoryAvailableHandler
        - realloc
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/memory/lib_memory.c:55,20'
          Dst:             realloc
        - Src:             'hal/memory/lib_memory.c:58,9'
          Dst:             noMemoryAvailableHandler
    - functionName:    noMemoryAvailableHandler
      functionSourceFile: '/src/libiec61850/hal/memory/lib_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18
      functionLinenumberEnd: 21
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Memory_calloc
      functionSourceFile: '/src/libiec61850/hal/memory/lib_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - calloc
        - noMemoryAvailableHandler
      functionUses:    324
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/memory/lib_memory.c:44,20'
          Dst:             calloc
        - Src:             'hal/memory/lib_memory.c:47,9'
          Dst:             noMemoryAvailableHandler
    - functionName:    calloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Memory_malloc
      functionSourceFile: '/src/libiec61850/hal/memory/lib_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - noMemoryAvailableHandler
      functionUses:    104
      BranchProfiles:  []
      Callsites:
        - Src:             'hal/memory/lib_memory.c:36,9'
          Dst:             noMemoryAvailableHandler
    - functionName:    Memory_installExceptionHandler
      functionSourceFile: '/src/libiec61850/hal/memory/lib_memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
...
