*.a
E2Manager/asn1codec/e2ap_engine/converter-example
E2Manager/asn1codec/tests/
-
+E2Manager/cp.out
TESTX2SETUPREQUEST=tests/x2setup_request_wrapper_test
TESTCONFUPDATE=tests/configuration_update_wrapper_test
TESTX2RESETREQUEST=tests/x2reset_request_wrapper_test
-
+TESTUNPACKXER=tests/unpack_xer
.PHONY: all clean e2ap_engine
-all: $(LIB) $(TESTX2SETUPREQUEST) $(TESTCONFUPDATE) $(TESTX2RESETREQUEST)
-
+all: $(LIB) $(TESTX2SETUPREQUEST) $(TESTCONFUPDATE) $(TESTX2RESETREQUEST) $(TESTUNPACKXER)
e2ap_engine/libasncodec.a:
cd e2ap_engine/ && make -f converter-example.mk
mkdir -p $(dir $@)
$(CC) $(CFLAGS) src/$@.c -o $@ $(LIB) e2ap_engine/libasncodec.a
-$(TESTX2RESETREQUEST): % : $(LIB) src/%.c
+$(TESTX2RESETREQUEST): % : $(LIB) src/%.c
mkdir -p $(dir $@)
$(CC) $(CFLAGS) src/$@.c -o $@ $(LIB) e2ap_engine/libasncodec.a
-
+$(TESTUNPACKXER): % : $(LIB) src/%.c
+ mkdir -p $(dir $@)
+ $(CC) $(CFLAGS) src/$@.c -o $@ $(LIB) e2ap_engine/libasncodec.a
clean:
rm -rf $(OBJDIR) tests
--- /dev/null
+<E2AP-PDU>
+ <initiatingMessage>
+ <procedureCode>2</procedureCode>
+ <criticality><ignore/></criticality>
+ <value>
+ <LoadInformation>
+ <protocolIEs>
+ <LoadInformation-IEs>
+ <id>6</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-List>
+ <ProtocolIE-Single-Container>
+ <id>7</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-Item>
+ <cell-ID>
+ <pLMN-Identity>02 F8 29</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </cell-ID>
+ </CellInformation-Item>
+ </value>
+ </ProtocolIE-Single-Container>
+ </CellInformation-List>
+ </value>
+ </LoadInformation-IEs>
+ </protocolIEs>
+ </LoadInformation>
+ </value>
+ </initiatingMessage>
+</E2AP-PDU>
--- /dev/null
+<E2AP-PDU>
+ <initiatingMessage>
+ <procedureCode>2</procedureCode>
+ <criticality><ignore/></criticality>
+ <value>
+ <LoadInformation>
+ <protocolIEs>
+ <LoadInformation-IEs>
+ <id>6</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-List>
+ <ProtocolIE-Single-Container>
+ <id>7</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-Item>
+ <cell-ID>
+ <pLMN-Identity>02 F8 29</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </cell-ID>
+ <ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/>
+ </ul-InterferenceOverloadIndication>
+ </CellInformation-Item>
+ </value>
+ </ProtocolIE-Single-Container>
+ </CellInformation-List>
+ </value>
+ </LoadInformation-IEs>
+ </protocolIEs>
+ </LoadInformation>
+ </value>
+ </initiatingMessage>
+</E2AP-PDU>
--- /dev/null
+<E2AP-PDU>
+ <initiatingMessage>
+ <procedureCode>2</procedureCode>
+ <criticality><ignore/></criticality>
+ <value>
+ <LoadInformation>
+ <protocolIEs>
+ <LoadInformation-IEs>
+ <id>6</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-List>
+ <ProtocolIE-Single-Container>
+ <id>7</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-Item>
+ <cell-ID>
+ <pLMN-Identity>02 F8 29</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </cell-ID>
+ <ul-InterferenceOverloadIndication>
+ <high-interference/>
+ </ul-InterferenceOverloadIndication>
+ <ul-HighInterferenceIndicationInfo>
+ <UL-HighInterferenceIndicationInfo-Item>
+ <target-Cell-ID>
+ <pLMN-Identity>02 F8 30</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </target-Cell-ID>
+ <ul-interferenceindication>
+ 1010101010101010
+ </ul-interferenceindication>
+ </UL-HighInterferenceIndicationInfo-Item>
+ </ul-HighInterferenceIndicationInfo>
+ </CellInformation-Item>
+ </value>
+ </ProtocolIE-Single-Container>
+ </CellInformation-List>
+ </value>
+ </LoadInformation-IEs>
+ </protocolIEs>
+ </LoadInformation>
+ </value>
+ </initiatingMessage>
+</E2AP-PDU>
--- /dev/null
+<E2AP-PDU>
+ <initiatingMessage>
+ <procedureCode>2</procedureCode>
+ <criticality><ignore/></criticality>
+ <value>
+ <LoadInformation>
+ <protocolIEs>
+ <LoadInformation-IEs>
+ <id>6</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-List>
+ <ProtocolIE-Single-Container>
+ <id>7</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-Item>
+ <cell-ID>
+ <pLMN-Identity>02 F8 29</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </cell-ID>
+ <ul-InterferenceOverloadIndication>
+ <low-interference/>
+ </ul-InterferenceOverloadIndication>
+ <relativeNarrowbandTxPower>
+ <rNTP-PerPRB>
+ 11001100
+ </rNTP-PerPRB>
+ <rNTP-Threshold>
+ <minusSix/>
+ </rNTP-Threshold>
+ <numberOfCellSpecificAntennaPorts>
+ <two/>
+ </numberOfCellSpecificAntennaPorts>
+ <p-B>2 </p-B>
+ <pDCCH-InterferenceImpact>1</pDCCH-InterferenceImpact>
+ </relativeNarrowbandTxPower>
+ </CellInformation-Item>
+ </value>
+ </ProtocolIE-Single-Container>
+ </CellInformation-List>
+ </value>
+ </LoadInformation-IEs>
+ </protocolIEs>
+ </LoadInformation>
+ </value>
+ </initiatingMessage>
+</E2AP-PDU>
--- /dev/null
+<E2AP-PDU>
+ <initiatingMessage>
+ <procedureCode>2</procedureCode>
+ <criticality><ignore/></criticality>
+ <value>
+ <LoadInformation>
+ <protocolIEs>
+ <LoadInformation-IEs>
+ <id>6</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-List>
+ <ProtocolIE-Single-Container>
+ <id>7</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-Item>
+ <cell-ID>
+ <pLMN-Identity>02 F8 29</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </cell-ID>
+ <ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </ul-InterferenceOverloadIndication>
+ <ul-HighInterferenceIndicationInfo>
+ <UL-HighInterferenceIndicationInfo-Item>
+ <target-Cell-ID>
+ <pLMN-Identity>02 F8 30</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </target-Cell-ID>
+ <ul-interferenceindication>
+ 1010101010101010
+ </ul-interferenceindication>
+ </UL-HighInterferenceIndicationInfo-Item>
+
+ </ul-HighInterferenceIndicationInfo>
+ <relativeNarrowbandTxPower>
+ <rNTP-PerPRB>
+ 11001100
+ </rNTP-PerPRB>
+ <rNTP-Threshold>
+ <minusSix/>
+ </rNTP-Threshold>
+ <numberOfCellSpecificAntennaPorts>
+ <two/>
+ </numberOfCellSpecificAntennaPorts>
+ <p-B>2 </p-B>
+ <pDCCH-InterferenceImpact>1</pDCCH-InterferenceImpact>
+ </relativeNarrowbandTxPower>
+ <iE-Extensions>
+ <CellInformation-Item-ExtIEs>
+ <id>61</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ABSInformation>
+ <fdd>
+ <abs-pattern-info>
+ 0000011111000001111100000111110000011111
+ </abs-pattern-info>
+ <numberOfCellSpecificAntennaPorts>
+ <one/>
+ </numberOfCellSpecificAntennaPorts>
+ <measurement-subset>
+ 1000001111100000111110000011110000001111
+ </measurement-subset>
+ </fdd>
+ </ABSInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ </iE-Extensions>
+ </CellInformation-Item>
+ </value>
+ </ProtocolIE-Single-Container>
+ </CellInformation-List>
+ </value>
+ </LoadInformation-IEs>
+ </protocolIEs>
+ </LoadInformation>
+ </value>
+ </initiatingMessage>
+</E2AP-PDU>
--- /dev/null
+<E2AP-PDU>
+ <initiatingMessage>
+ <procedureCode>2</procedureCode>
+ <criticality><ignore/></criticality>
+ <value>
+ <LoadInformation>
+ <protocolIEs>
+ <LoadInformation-IEs>
+ <id>6</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-List>
+ <ProtocolIE-Single-Container>
+ <id>7</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-Item>
+ <cell-ID>
+ <pLMN-Identity>02 F8 29</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </cell-ID>
+ <ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </ul-InterferenceOverloadIndication>
+ <ul-HighInterferenceIndicationInfo>
+ <UL-HighInterferenceIndicationInfo-Item>
+ <target-Cell-ID>
+ <pLMN-Identity>02 F8 30</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </target-Cell-ID>
+ <ul-interferenceindication>
+ 1010101010101010
+ </ul-interferenceindication>
+ </UL-HighInterferenceIndicationInfo-Item>
+
+ </ul-HighInterferenceIndicationInfo>
+ <relativeNarrowbandTxPower>
+ <rNTP-PerPRB>
+ 11001100
+ </rNTP-PerPRB>
+ <rNTP-Threshold>
+ <minusSix/>
+ </rNTP-Threshold>
+ <numberOfCellSpecificAntennaPorts>
+ <two/>
+ </numberOfCellSpecificAntennaPorts>
+ <p-B>2 </p-B>
+ <pDCCH-InterferenceImpact>1</pDCCH-InterferenceImpact>
+ </relativeNarrowbandTxPower>
+ <iE-Extensions>
+ <CellInformation-Item-ExtIEs>
+ <id>61</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ABSInformation>
+ <fdd>
+ <abs-pattern-info>
+ 0000011111000001111100000111110000011111
+ </abs-pattern-info>
+ <numberOfCellSpecificAntennaPorts>
+ <one/>
+ </numberOfCellSpecificAntennaPorts>
+ <measurement-subset>
+ 1000001111100000111110000011110000001111
+ </measurement-subset>
+ </fdd>
+ </ABSInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>62</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <InvokeIndication>
+ <abs-information/>
+ </InvokeIndication>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ </iE-Extensions>
+ </CellInformation-Item>
+ </value>
+ </ProtocolIE-Single-Container>
+ </CellInformation-List>
+ </value>
+ </LoadInformation-IEs>
+ </protocolIEs>
+ </LoadInformation>
+ </value>
+ </initiatingMessage>
+</E2AP-PDU>
--- /dev/null
+<E2AP-PDU>
+ <initiatingMessage>
+ <procedureCode>2</procedureCode>
+ <criticality><ignore/></criticality>
+ <value>
+ <LoadInformation>
+ <protocolIEs>
+ <LoadInformation-IEs>
+ <id>6</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-List>
+ <ProtocolIE-Single-Container>
+ <id>7</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-Item>
+ <cell-ID>
+ <pLMN-Identity>02 F8 29</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </cell-ID>
+ <ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </ul-InterferenceOverloadIndication>
+ <ul-HighInterferenceIndicationInfo>
+ <UL-HighInterferenceIndicationInfo-Item>
+ <target-Cell-ID>
+ <pLMN-Identity>02 F8 30</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </target-Cell-ID>
+ <ul-interferenceindication>
+ 1010101010101010
+ </ul-interferenceindication>
+ </UL-HighInterferenceIndicationInfo-Item>
+
+ </ul-HighInterferenceIndicationInfo>
+ <relativeNarrowbandTxPower>
+ <rNTP-PerPRB>
+ 11001100
+ </rNTP-PerPRB>
+ <rNTP-Threshold>
+ <minusSix/>
+ </rNTP-Threshold>
+ <numberOfCellSpecificAntennaPorts>
+ <two/>
+ </numberOfCellSpecificAntennaPorts>
+ <p-B>2 </p-B>
+ <pDCCH-InterferenceImpact>1</pDCCH-InterferenceImpact>
+ </relativeNarrowbandTxPower>
+ <iE-Extensions>
+ <CellInformation-Item-ExtIEs>
+ <id>61</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ABSInformation>
+ <fdd>
+ <abs-pattern-info>
+ 0000011111000001111100000111110000011111
+ </abs-pattern-info>
+ <numberOfCellSpecificAntennaPorts>
+ <one/>
+ </numberOfCellSpecificAntennaPorts>
+ <measurement-subset>
+ 1000001111100000111110000011110000001111
+ </measurement-subset>
+ </fdd>
+ </ABSInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>62</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <InvokeIndication>
+ <abs-information/>
+ </InvokeIndication>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>99</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <SubframeAssignment>
+ <sa6/>
+ </SubframeAssignment>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ </iE-Extensions>
+ </CellInformation-Item>
+ </value>
+ </ProtocolIE-Single-Container>
+ </CellInformation-List>
+ </value>
+ </LoadInformation-IEs>
+ </protocolIEs>
+ </LoadInformation>
+ </value>
+ </initiatingMessage>
+</E2AP-PDU>
--- /dev/null
+<E2AP-PDU>
+ <initiatingMessage>
+ <procedureCode>2</procedureCode>
+ <criticality><ignore/></criticality>
+ <value>
+ <LoadInformation>
+ <protocolIEs>
+ <LoadInformation-IEs>
+ <id>6</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-List>
+ <ProtocolIE-Single-Container>
+ <id>7</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-Item>
+ <cell-ID>
+ <pLMN-Identity>02 F8 29</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </cell-ID>
+ <ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </ul-InterferenceOverloadIndication>
+ <ul-HighInterferenceIndicationInfo>
+ <UL-HighInterferenceIndicationInfo-Item>
+ <target-Cell-ID>
+ <pLMN-Identity>02 F8 30</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </target-Cell-ID>
+ <ul-interferenceindication>
+ 1010101010101010
+ </ul-interferenceindication>
+ </UL-HighInterferenceIndicationInfo-Item>
+
+ </ul-HighInterferenceIndicationInfo>
+ <relativeNarrowbandTxPower>
+ <rNTP-PerPRB>
+ 11001100
+ </rNTP-PerPRB>
+ <rNTP-Threshold>
+ <minusSix/>
+ </rNTP-Threshold>
+ <numberOfCellSpecificAntennaPorts>
+ <two/>
+ </numberOfCellSpecificAntennaPorts>
+ <p-B>2 </p-B>
+ <pDCCH-InterferenceImpact>1</pDCCH-InterferenceImpact>
+ </relativeNarrowbandTxPower>
+ <iE-Extensions>
+ <CellInformation-Item-ExtIEs>
+ <id>61</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ABSInformation>
+ <fdd>
+ <abs-pattern-info>
+ 0000011111000001111100000111110000011111
+ </abs-pattern-info>
+ <numberOfCellSpecificAntennaPorts>
+ <one/>
+ </numberOfCellSpecificAntennaPorts>
+ <measurement-subset>
+ 1000001111100000111110000011110000001111
+ </measurement-subset>
+ </fdd>
+ </ABSInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>62</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <InvokeIndication>
+ <abs-information/>
+ </InvokeIndication>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>99</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <SubframeAssignment>
+ <sa6/>
+ </SubframeAssignment>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>100</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ExtendedULInterferenceOverloadInfo>
+ <associatedSubframes>
+ 11001
+ </associatedSubframes>
+ <extended-ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </extended-ul-InterferenceOverloadIndication>
+ </ExtendedULInterferenceOverloadInfo>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ </iE-Extensions>
+ </CellInformation-Item>
+ </value>
+ </ProtocolIE-Single-Container>
+ </CellInformation-List>
+ </value>
+ </LoadInformation-IEs>
+ </protocolIEs>
+ </LoadInformation>
+ </value>
+ </initiatingMessage>
+</E2AP-PDU>
--- /dev/null
+<E2AP-PDU>
+ <initiatingMessage>
+ <procedureCode>2</procedureCode>
+ <criticality><ignore/></criticality>
+ <value>
+ <LoadInformation>
+ <protocolIEs>
+ <LoadInformation-IEs>
+ <id>6</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-List>
+ <ProtocolIE-Single-Container>
+ <id>7</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-Item>
+ <cell-ID>
+ <pLMN-Identity>02 F8 29</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </cell-ID>
+ <ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </ul-InterferenceOverloadIndication>
+ <ul-HighInterferenceIndicationInfo>
+ <UL-HighInterferenceIndicationInfo-Item>
+ <target-Cell-ID>
+ <pLMN-Identity>02 F8 30</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </target-Cell-ID>
+ <ul-interferenceindication>
+ 1010101010101010
+ </ul-interferenceindication>
+ </UL-HighInterferenceIndicationInfo-Item>
+
+ </ul-HighInterferenceIndicationInfo>
+ <relativeNarrowbandTxPower>
+ <rNTP-PerPRB>
+ 11001100
+ </rNTP-PerPRB>
+ <rNTP-Threshold>
+ <minusSix/>
+ </rNTP-Threshold>
+ <numberOfCellSpecificAntennaPorts>
+ <two/>
+ </numberOfCellSpecificAntennaPorts>
+ <p-B>2 </p-B>
+ <pDCCH-InterferenceImpact>1</pDCCH-InterferenceImpact>
+ </relativeNarrowbandTxPower>
+ <iE-Extensions>
+ <CellInformation-Item-ExtIEs>
+ <id>61</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ABSInformation>
+ <fdd>
+ <abs-pattern-info>
+ 0000011111000001111100000111110000011111
+ </abs-pattern-info>
+ <numberOfCellSpecificAntennaPorts>
+ <one/>
+ </numberOfCellSpecificAntennaPorts>
+ <measurement-subset>
+ 1000001111100000111110000011110000001111
+ </measurement-subset>
+ </fdd>
+ </ABSInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>62</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <InvokeIndication>
+ <abs-information/>
+ </InvokeIndication>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>99</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <SubframeAssignment>
+ <sa6/>
+ </SubframeAssignment>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>100</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ExtendedULInterferenceOverloadInfo>
+ <associatedSubframes>
+ 11001
+ </associatedSubframes>
+ <extended-ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </extended-ul-InterferenceOverloadIndication>
+ </ExtendedULInterferenceOverloadInfo>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>108</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <CoMPInformation>
+ <coMPInformationItem>
+ <SEQUENCE>
+ <coMPHypothesisSet>
+ <CoMPHypothesisSetItem>
+ <coMPCellID>
+ <pLMN-Identity>02 F8 31</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </coMPCellID>
+ <coMPHypothesis>
+ 1110000000000111101010110101
+ </coMPHypothesis>
+ </CoMPHypothesisSetItem>
+ </coMPHypothesisSet>
+ <benefitMetric>
+ -99
+ </benefitMetric>
+ </SEQUENCE>
+ <SEQUENCE>
+ <coMPHypothesisSet>
+ <CoMPHypothesisSetItem>
+ <coMPCellID>
+ <pLMN-Identity>02 F8 32</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000001100111101010110101
+ </eUTRANcellIdentifier>
+ </coMPCellID>
+ <coMPHypothesis>
+ 1110001100000111101010110101
+ </coMPHypothesis>
+ </CoMPHypothesisSetItem>
+ </coMPHypothesisSet>
+ <benefitMetric>
+ 30
+ </benefitMetric>
+ </SEQUENCE>
+ </coMPInformationItem>
+ <coMPInformationStartTime>
+ <SEQUENCE>
+ <startSFN>
+ 50
+ </startSFN>
+ <startSubframeNumber>
+ 3
+ </startSubframeNumber>
+ </SEQUENCE>
+ </coMPInformationStartTime>
+ </CoMPInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ </iE-Extensions>
+ </CellInformation-Item>
+ </value>
+ </ProtocolIE-Single-Container>
+ </CellInformation-List>
+ </value>
+ </LoadInformation-IEs>
+ </protocolIEs>
+ </LoadInformation>
+ </value>
+ </initiatingMessage>
+</E2AP-PDU>
--- /dev/null
+<E2AP-PDU>
+ <initiatingMessage>
+ <procedureCode>2</procedureCode>
+ <criticality><ignore/></criticality>
+ <value>
+ <LoadInformation>
+ <protocolIEs>
+ <LoadInformation-IEs>
+ <id>6</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-List>
+ <ProtocolIE-Single-Container>
+ <id>7</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-Item>
+ <cell-ID>
+ <pLMN-Identity>02 F8 29</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </cell-ID>
+ <ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </ul-InterferenceOverloadIndication>
+ <ul-HighInterferenceIndicationInfo>
+ <UL-HighInterferenceIndicationInfo-Item>
+ <target-Cell-ID>
+ <pLMN-Identity>02 F8 30</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </target-Cell-ID>
+ <ul-interferenceindication>
+ 1010101010101010
+ </ul-interferenceindication>
+ </UL-HighInterferenceIndicationInfo-Item>
+
+ </ul-HighInterferenceIndicationInfo>
+ <relativeNarrowbandTxPower>
+ <rNTP-PerPRB>
+ 11001100
+ </rNTP-PerPRB>
+ <rNTP-Threshold>
+ <minusSix/>
+ </rNTP-Threshold>
+ <numberOfCellSpecificAntennaPorts>
+ <two/>
+ </numberOfCellSpecificAntennaPorts>
+ <p-B>2 </p-B>
+ <pDCCH-InterferenceImpact>1</pDCCH-InterferenceImpact>
+ </relativeNarrowbandTxPower>
+ <iE-Extensions>
+ <CellInformation-Item-ExtIEs>
+ <id>61</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ABSInformation>
+ <fdd>
+ <abs-pattern-info>
+ 0000011111000001111100000111110000011111
+ </abs-pattern-info>
+ <numberOfCellSpecificAntennaPorts>
+ <one/>
+ </numberOfCellSpecificAntennaPorts>
+ <measurement-subset>
+ 1000001111100000111110000011110000001111
+ </measurement-subset>
+ </fdd>
+ </ABSInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>62</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <InvokeIndication>
+ <abs-information/>
+ </InvokeIndication>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>99</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <SubframeAssignment>
+ <sa6/>
+ </SubframeAssignment>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>100</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ExtendedULInterferenceOverloadInfo>
+ <associatedSubframes>
+ 11001
+ </associatedSubframes>
+ <extended-ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </extended-ul-InterferenceOverloadIndication>
+ </ExtendedULInterferenceOverloadInfo>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>106</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <DynamicDLTransmissionInformation>
+ <naics-active>
+ <transmissionModes>
+ 11001101
+ </transmissionModes>
+ <pB-information>
+ 0
+ </pB-information>
+ <pA-list>
+ <dB-1dot77/><dB-3/>
+ </pA-list>
+ </naics-active>
+ </DynamicDLTransmissionInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ </iE-Extensions>
+ </CellInformation-Item>
+ </value>
+ </ProtocolIE-Single-Container>
+ </CellInformation-List>
+ </value>
+ </LoadInformation-IEs>
+ </protocolIEs>
+ </LoadInformation>
+ </value>
+ </initiatingMessage>
+</E2AP-PDU>
--- /dev/null
+<E2AP-PDU>
+ <initiatingMessage>
+ <procedureCode>2</procedureCode>
+ <criticality><ignore/></criticality>
+ <value>
+ <LoadInformation>
+ <protocolIEs>
+ <LoadInformation-IEs>
+ <id>6</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-List>
+ <ProtocolIE-Single-Container>
+ <id>7</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-Item>
+ <cell-ID>
+ <pLMN-Identity>02 F8 29</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </cell-ID>
+ <ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </ul-InterferenceOverloadIndication>
+ <ul-HighInterferenceIndicationInfo>
+ <UL-HighInterferenceIndicationInfo-Item>
+ <target-Cell-ID>
+ <pLMN-Identity>02 F8 30</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </target-Cell-ID>
+ <ul-interferenceindication>
+ 1010101010101010
+ </ul-interferenceindication>
+ </UL-HighInterferenceIndicationInfo-Item>
+
+ </ul-HighInterferenceIndicationInfo>
+ <relativeNarrowbandTxPower>
+ <rNTP-PerPRB>
+ 11001100
+ </rNTP-PerPRB>
+ <rNTP-Threshold>
+ <minusSix/>
+ </rNTP-Threshold>
+ <numberOfCellSpecificAntennaPorts>
+ <two/>
+ </numberOfCellSpecificAntennaPorts>
+ <p-B>2 </p-B>
+ <pDCCH-InterferenceImpact>1</pDCCH-InterferenceImpact>
+ </relativeNarrowbandTxPower>
+ <iE-Extensions>
+ <CellInformation-Item-ExtIEs>
+ <id>61</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ABSInformation>
+ <fdd>
+ <abs-pattern-info>
+ 0000011111000001111100000111110000011111
+ </abs-pattern-info>
+ <numberOfCellSpecificAntennaPorts>
+ <one/>
+ </numberOfCellSpecificAntennaPorts>
+ <measurement-subset>
+ 1000001111100000111110000011110000001111
+ </measurement-subset>
+ </fdd>
+ </ABSInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>62</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <InvokeIndication>
+ <abs-information/>
+ </InvokeIndication>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>99</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <SubframeAssignment>
+ <sa6/>
+ </SubframeAssignment>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>100</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ExtendedULInterferenceOverloadInfo>
+ <associatedSubframes>
+ 11001
+ </associatedSubframes>
+ <extended-ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </extended-ul-InterferenceOverloadIndication>
+ </ExtendedULInterferenceOverloadInfo>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>106</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <DynamicDLTransmissionInformation>
+ <naics-active>
+ <transmissionModes>
+ 11001101
+ </transmissionModes>
+ <pB-information>
+ 0
+ </pB-information>
+ <pA-list>
+ <dB-1dot77/><dB-3/>
+ </pA-list>
+ </naics-active>
+ </DynamicDLTransmissionInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>108</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <CoMPInformation>
+ <coMPInformationItem>
+ <SEQUENCE>
+ <coMPHypothesisSet>
+ <CoMPHypothesisSetItem>
+ <coMPCellID>
+ <pLMN-Identity>02 F8 31</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </coMPCellID>
+ <coMPHypothesis>
+ 1110000000000111101010110101
+ </coMPHypothesis>
+ </CoMPHypothesisSetItem>
+ </coMPHypothesisSet>
+ <benefitMetric>
+ -99
+ </benefitMetric>
+ </SEQUENCE>
+ <SEQUENCE>
+ <coMPHypothesisSet>
+ <CoMPHypothesisSetItem>
+ <coMPCellID>
+ <pLMN-Identity>02 F8 32</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000001100111101010110101
+ </eUTRANcellIdentifier>
+ </coMPCellID>
+ <coMPHypothesis>
+ 1110001100000111101010110101
+ </coMPHypothesis>
+ </CoMPHypothesisSetItem>
+ </coMPHypothesisSet>
+ <benefitMetric>
+ 30
+ </benefitMetric>
+ </SEQUENCE>
+ </coMPInformationItem>
+ <coMPInformationStartTime>
+ <SEQUENCE>
+ <startSFN>
+ 50
+ </startSFN>
+ <startSubframeNumber>
+ 3
+ </startSubframeNumber>
+ </SEQUENCE>
+ </coMPInformationStartTime>
+ </CoMPInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ </iE-Extensions>
+ </CellInformation-Item>
+ </value>
+ </ProtocolIE-Single-Container>
+ </CellInformation-List>
+ </value>
+ </LoadInformation-IEs>
+ </protocolIEs>
+ </LoadInformation>
+ </value>
+ </initiatingMessage>
+</E2AP-PDU>
--- /dev/null
+<E2AP-PDU>
+ <initiatingMessage>
+ <procedureCode>2</procedureCode>
+ <criticality><ignore/></criticality>
+ <value>
+ <LoadInformation>
+ <protocolIEs>
+ <LoadInformation-IEs>
+ <id>6</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-List>
+ <ProtocolIE-Single-Container>
+ <id>7</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-Item>
+ <cell-ID>
+ <pLMN-Identity>02 F8 29</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </cell-ID>
+ <ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </ul-InterferenceOverloadIndication>
+ <ul-HighInterferenceIndicationInfo>
+ <UL-HighInterferenceIndicationInfo-Item>
+ <target-Cell-ID>
+ <pLMN-Identity>02 F8 30</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </target-Cell-ID>
+ <ul-interferenceindication>
+ 1010101010101010
+ </ul-interferenceindication>
+ </UL-HighInterferenceIndicationInfo-Item>
+
+ </ul-HighInterferenceIndicationInfo>
+ <relativeNarrowbandTxPower>
+ <rNTP-PerPRB>
+ 11001100
+ </rNTP-PerPRB>
+ <rNTP-Threshold>
+ <minusSix/>
+ </rNTP-Threshold>
+ <numberOfCellSpecificAntennaPorts>
+ <two/>
+ </numberOfCellSpecificAntennaPorts>
+ <p-B>2 </p-B>
+ <pDCCH-InterferenceImpact>1</pDCCH-InterferenceImpact>
+ </relativeNarrowbandTxPower>
+ <iE-Extensions>
+ <CellInformation-Item-ExtIEs>
+ <id>61</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ABSInformation>
+ <fdd>
+ <abs-pattern-info>
+ 0000011111000001111100000111110000011111
+ </abs-pattern-info>
+ <numberOfCellSpecificAntennaPorts>
+ <one/>
+ </numberOfCellSpecificAntennaPorts>
+ <measurement-subset>
+ 1000001111100000111110000011110000001111
+ </measurement-subset>
+ </fdd>
+ </ABSInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>62</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <InvokeIndication>
+ <abs-information/>
+ </InvokeIndication>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>99</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <SubframeAssignment>
+ <sa6/>
+ </SubframeAssignment>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>100</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ExtendedULInterferenceOverloadInfo>
+ <associatedSubframes>
+ 11001
+ </associatedSubframes>
+ <extended-ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </extended-ul-InterferenceOverloadIndication>
+ </ExtendedULInterferenceOverloadInfo>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>106</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <DynamicDLTransmissionInformation>
+ <naics-active>
+ <transmissionModes>
+ 11001101
+ </transmissionModes>
+ <pB-information>
+ 0
+ </pB-information>
+ <pA-list>
+ <dB-1dot77/><dB-3/>
+ </pA-list>
+ </naics-active>
+ </DynamicDLTransmissionInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>108</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <CoMPInformation>
+ <coMPInformationItem>
+ <SEQUENCE>
+ <coMPHypothesisSet>
+ <CoMPHypothesisSetItem>
+ <coMPCellID>
+ <pLMN-Identity>02 F8 31</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </coMPCellID>
+ <coMPHypothesis>
+ 1110000000000111101010110101
+ </coMPHypothesis>
+ </CoMPHypothesisSetItem>
+ </coMPHypothesisSet>
+ <benefitMetric>
+ -99
+ </benefitMetric>
+ </SEQUENCE>
+ <SEQUENCE>
+ <coMPHypothesisSet>
+ <CoMPHypothesisSetItem>
+ <coMPCellID>
+ <pLMN-Identity>02 F8 32</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000001100111101010110101
+ </eUTRANcellIdentifier>
+ </coMPCellID>
+ <coMPHypothesis>
+ 1110001100000111101010110101
+ </coMPHypothesis>
+ </CoMPHypothesisSetItem>
+ </coMPHypothesisSet>
+ <benefitMetric>
+ 30
+ </benefitMetric>
+ </SEQUENCE>
+ </coMPInformationItem>
+ <coMPInformationStartTime>
+ <SEQUENCE>
+ <startSFN>
+ 50
+ </startSFN>
+ <startSubframeNumber>
+ 3
+ </startSubframeNumber>
+ </SEQUENCE>
+ </coMPInformationStartTime>
+ </CoMPInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ </iE-Extensions>
+ </CellInformation-Item>
+ </value>
+ </ProtocolIE-Single-Container>
+ <ProtocolIE-Single-Container>
+ <id>7</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-Item>
+ <cell-ID>
+ <pLMN-Identity>02 F9 10</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </cell-ID>
+ <ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </ul-InterferenceOverloadIndication>
+ <ul-HighInterferenceIndicationInfo>
+ <UL-HighInterferenceIndicationInfo-Item>
+ <target-Cell-ID>
+ <pLMN-Identity>02 F8 10</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </target-Cell-ID>
+ <ul-interferenceindication>
+ 1010101010101010
+ </ul-interferenceindication>
+ </UL-HighInterferenceIndicationInfo-Item>
+
+ </ul-HighInterferenceIndicationInfo>
+ <relativeNarrowbandTxPower>
+ <rNTP-PerPRB>
+ 11001100
+ </rNTP-PerPRB>
+ <rNTP-Threshold>
+ <minusSix/>
+ </rNTP-Threshold>
+ <numberOfCellSpecificAntennaPorts>
+ <two/>
+ </numberOfCellSpecificAntennaPorts>
+ <p-B>2 </p-B>
+ <pDCCH-InterferenceImpact>1</pDCCH-InterferenceImpact>
+ </relativeNarrowbandTxPower>
+ <iE-Extensions>
+ <CellInformation-Item-ExtIEs>
+ <id>61</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ABSInformation>
+ <fdd>
+ <abs-pattern-info>
+ 0000011111000001111100000111110000011111
+ </abs-pattern-info>
+ <numberOfCellSpecificAntennaPorts>
+ <one/>
+ </numberOfCellSpecificAntennaPorts>
+ <measurement-subset>
+ 1000001111100000111110000011110000001111
+ </measurement-subset>
+ </fdd>
+ </ABSInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>62</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <InvokeIndication>
+ <abs-information/>
+ </InvokeIndication>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>99</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <SubframeAssignment>
+ <sa6/>
+ </SubframeAssignment>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>100</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ExtendedULInterferenceOverloadInfo>
+ <associatedSubframes>
+ 11001
+ </associatedSubframes>
+ <extended-ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </extended-ul-InterferenceOverloadIndication>
+ </ExtendedULInterferenceOverloadInfo>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>106</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <DynamicDLTransmissionInformation>
+ <naics-active>
+ <transmissionModes>
+ 11001101
+ </transmissionModes>
+ <pB-information>
+ 0
+ </pB-information>
+ <pA-list>
+ <dB-1dot77/><dB-3/>
+ </pA-list>
+ </naics-active>
+ </DynamicDLTransmissionInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>108</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <CoMPInformation>
+ <coMPInformationItem>
+ <SEQUENCE>
+ <coMPHypothesisSet>
+ <CoMPHypothesisSetItem>
+ <coMPCellID>
+ <pLMN-Identity>02 F8 11</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </coMPCellID>
+ <coMPHypothesis>
+ 1110000000000111101010110101
+ </coMPHypothesis>
+ </CoMPHypothesisSetItem>
+ </coMPHypothesisSet>
+ <benefitMetric>
+ -99
+ </benefitMetric>
+ </SEQUENCE>
+ <SEQUENCE>
+ <coMPHypothesisSet>
+ <CoMPHypothesisSetItem>
+ <coMPCellID>
+ <pLMN-Identity>02 F8 12</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000001100111101010110101
+ </eUTRANcellIdentifier>
+ </coMPCellID>
+ <coMPHypothesis>
+ 1110001100000111101010110101
+ </coMPHypothesis>
+ </CoMPHypothesisSetItem>
+ </coMPHypothesisSet>
+ <benefitMetric>
+ 30
+ </benefitMetric>
+ </SEQUENCE>
+ </coMPInformationItem>
+ <coMPInformationStartTime>
+ <SEQUENCE>
+ <startSFN>
+ 50
+ </startSFN>
+ <startSubframeNumber>
+ 3
+ </startSubframeNumber>
+ </SEQUENCE>
+ </coMPInformationStartTime>
+ </CoMPInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ </iE-Extensions>
+ </CellInformation-Item>
+ </value>
+ </ProtocolIE-Single-Container>
+ </CellInformation-List>
+ </value>
+ </LoadInformation-IEs>
+ </protocolIEs>
+ </LoadInformation>
+ </value>
+ </initiatingMessage>
+</E2AP-PDU>
--- /dev/null
+<E2AP-PDU>
+ <initiatingMessage>
+ <procedureCode>2</procedureCode>
+ <criticality><ignore/></criticality>
+ <value>
+ <LoadInformation>
+ <protocolIEs>
+ <LoadInformation-IEs>
+ <id>6</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-List>
+ <ProtocolIE-Single-Container>
+ <id>7</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-Item>
+ <cell-ID>
+ <pLMN-Identity>02 F8 29</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </cell-ID>
+ <ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </ul-InterferenceOverloadIndication>
+ <ul-HighInterferenceIndicationInfo>
+ <UL-HighInterferenceIndicationInfo-Item>
+ <target-Cell-ID>
+ <pLMN-Identity>02 F8 30</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </target-Cell-ID>
+ <ul-interferenceindication>
+ 1010101010101010
+ </ul-interferenceindication>
+ </UL-HighInterferenceIndicationInfo-Item>
+
+ </ul-HighInterferenceIndicationInfo>
+ <relativeNarrowbandTxPower>
+ <rNTP-PerPRB>
+ 11001100
+ </rNTP-PerPRB>
+ <rNTP-Threshold>
+ <minusSix/>
+ </rNTP-Threshold>
+ <numberOfCellSpecificAntennaPorts>
+ <two/>
+ </numberOfCellSpecificAntennaPorts>
+ <p-B>2 </p-B>
+ <pDCCH-InterferenceImpact>1</pDCCH-InterferenceImpact>
+ <iE-Extensions>
+ <RelativeNarrowbandTxPower-ExtIEs>
+ <id>148</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <EnhancedRNTP>
+ <enhancedRNTPBitmap>
+ 1010101000111
+ </enhancedRNTPBitmap>
+ <rNTP-High-Power-Threshold>
+ <minusFour/>
+ </rNTP-High-Power-Threshold>
+ <enhancedRNTPStartTime>
+ <startSFN>
+ 51
+ </startSFN>
+ <startSubframeNumber>
+ 9
+ </startSubframeNumber>
+ </enhancedRNTPStartTime>
+ </EnhancedRNTP>
+ </extensionValue>
+ </RelativeNarrowbandTxPower-ExtIEs>
+ </iE-Extensions>
+
+ </relativeNarrowbandTxPower>
+ <iE-Extensions>
+ <CellInformation-Item-ExtIEs>
+ <id>61</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ABSInformation>
+ <fdd>
+ <abs-pattern-info>
+ 0000011111000001111100000111110000011111
+ </abs-pattern-info>
+ <numberOfCellSpecificAntennaPorts>
+ <one/>
+ </numberOfCellSpecificAntennaPorts>
+ <measurement-subset>
+ 1000001111100000111110000011110000001111
+ </measurement-subset>
+ </fdd>
+ </ABSInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>62</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <InvokeIndication>
+ <abs-information/>
+ </InvokeIndication>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>99</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <SubframeAssignment>
+ <sa6/>
+ </SubframeAssignment>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>100</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ExtendedULInterferenceOverloadInfo>
+ <associatedSubframes>
+ 11001
+ </associatedSubframes>
+ <extended-ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </extended-ul-InterferenceOverloadIndication>
+ </ExtendedULInterferenceOverloadInfo>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>106</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <DynamicDLTransmissionInformation>
+ <naics-active>
+ <transmissionModes>
+ 11001101
+ </transmissionModes>
+ <pB-information>
+ 0
+ </pB-information>
+ <pA-list>
+ <dB-1dot77/><dB-3/>
+ </pA-list>
+ </naics-active>
+ </DynamicDLTransmissionInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>108</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <CoMPInformation>
+ <coMPInformationItem>
+ <SEQUENCE>
+ <coMPHypothesisSet>
+ <CoMPHypothesisSetItem>
+ <coMPCellID>
+ <pLMN-Identity>02 F8 31</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </coMPCellID>
+ <coMPHypothesis>
+ 1110000000000111101010110101
+ </coMPHypothesis>
+ </CoMPHypothesisSetItem>
+ </coMPHypothesisSet>
+ <benefitMetric>
+ -99
+ </benefitMetric>
+ </SEQUENCE>
+ <SEQUENCE>
+ <coMPHypothesisSet>
+ <CoMPHypothesisSetItem>
+ <coMPCellID>
+ <pLMN-Identity>02 F8 32</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000001100111101010110101
+ </eUTRANcellIdentifier>
+ </coMPCellID>
+ <coMPHypothesis>
+ 1110001100000111101010110101
+ </coMPHypothesis>
+ </CoMPHypothesisSetItem>
+ </coMPHypothesisSet>
+ <benefitMetric>
+ 30
+ </benefitMetric>
+ </SEQUENCE>
+ </coMPInformationItem>
+ <coMPInformationStartTime>
+ <SEQUENCE>
+ <startSFN>
+ 50
+ </startSFN>
+ <startSubframeNumber>
+ 3
+ </startSubframeNumber>
+ </SEQUENCE>
+ </coMPInformationStartTime>
+ </CoMPInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ </iE-Extensions>
+ </CellInformation-Item>
+ </value>
+ </ProtocolIE-Single-Container>
+ </CellInformation-List>
+ </value>
+ </LoadInformation-IEs>
+ </protocolIEs>
+ </LoadInformation>
+ </value>
+ </initiatingMessage>
+</E2AP-PDU>
--- /dev/null
+<E2AP-PDU>
+ <initiatingMessage>
+ <procedureCode>2</procedureCode>
+ <criticality><ignore/></criticality>
+ <value>
+ <LoadInformation>
+ <protocolIEs>
+ <LoadInformation-IEs>
+ <id>6</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-List>
+ <ProtocolIE-Single-Container>
+ <id>7</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-Item>
+ <cell-ID>
+ <pLMN-Identity>02 F8 29</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </cell-ID>
+ <ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </ul-InterferenceOverloadIndication>
+ <ul-HighInterferenceIndicationInfo>
+ <UL-HighInterferenceIndicationInfo-Item>
+ <target-Cell-ID>
+ <pLMN-Identity>02 F8 30</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </target-Cell-ID>
+ <ul-interferenceindication>
+ 1010101010101010
+ </ul-interferenceindication>
+ </UL-HighInterferenceIndicationInfo-Item>
+
+ </ul-HighInterferenceIndicationInfo>
+ <relativeNarrowbandTxPower>
+ <rNTP-PerPRB>
+ 11001100
+ </rNTP-PerPRB>
+ <rNTP-Threshold>
+ <minusSix/>
+ </rNTP-Threshold>
+ <numberOfCellSpecificAntennaPorts>
+ <two/>
+ </numberOfCellSpecificAntennaPorts>
+ <p-B>2 </p-B>
+ <pDCCH-InterferenceImpact>1</pDCCH-InterferenceImpact>
+ <iE-Extensions>
+ <RelativeNarrowbandTxPower-ExtIEs>
+ <id>148</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <EnhancedRNTP>
+ <enhancedRNTPBitmap>
+ 1010101000111
+ </enhancedRNTPBitmap>
+ <rNTP-High-Power-Threshold>
+ <minusFour/>
+ </rNTP-High-Power-Threshold>
+ <enhancedRNTPStartTime>
+ <startSFN>
+ 51
+ </startSFN>
+ <startSubframeNumber>
+ 9
+ </startSubframeNumber>
+ </enhancedRNTPStartTime>
+ </EnhancedRNTP>
+ </extensionValue>
+ </RelativeNarrowbandTxPower-ExtIEs>
+ </iE-Extensions>
+ </relativeNarrowbandTxPower>
+ <iE-Extensions>
+ <CellInformation-Item-ExtIEs>
+ <id>61</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ABSInformation>
+ <fdd>
+ <abs-pattern-info>
+ 0000011111000001111100000111110000011111
+ </abs-pattern-info>
+ <numberOfCellSpecificAntennaPorts>
+ <one/>
+ </numberOfCellSpecificAntennaPorts>
+ <measurement-subset>
+ 1000001111100000111110000011110000001111
+ </measurement-subset>
+ </fdd>
+ </ABSInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>62</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <InvokeIndication>
+ <abs-information/>
+ </InvokeIndication>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>99</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <SubframeAssignment>
+ <sa6/>
+ </SubframeAssignment>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>100</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ExtendedULInterferenceOverloadInfo>
+ <associatedSubframes>
+ 11001
+ </associatedSubframes>
+ <extended-ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </extended-ul-InterferenceOverloadIndication>
+ </ExtendedULInterferenceOverloadInfo>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>106</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <DynamicDLTransmissionInformation>
+ <naics-active>
+ <transmissionModes>
+ 11001101
+ </transmissionModes>
+ <pB-information>
+ 0
+ </pB-information>
+ <pA-list>
+ <dB-1dot77/><dB-3/>
+ </pA-list>
+ </naics-active>
+ </DynamicDLTransmissionInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>108</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <CoMPInformation>
+ <coMPInformationItem>
+ <SEQUENCE>
+ <coMPHypothesisSet>
+ <CoMPHypothesisSetItem>
+ <coMPCellID>
+ <pLMN-Identity>02 F8 31</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </coMPCellID>
+ <coMPHypothesis>
+ 1110000000000111101010110101
+ </coMPHypothesis>
+ </CoMPHypothesisSetItem>
+ </coMPHypothesisSet>
+ <benefitMetric>
+ -99
+ </benefitMetric>
+ </SEQUENCE>
+ <SEQUENCE>
+ <coMPHypothesisSet>
+ <CoMPHypothesisSetItem>
+ <coMPCellID>
+ <pLMN-Identity>02 F8 32</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000001100111101010110101
+ </eUTRANcellIdentifier>
+ </coMPCellID>
+ <coMPHypothesis>
+ 1110001100000111101010110101
+ </coMPHypothesis>
+ </CoMPHypothesisSetItem>
+ </coMPHypothesisSet>
+ <benefitMetric>
+ 30
+ </benefitMetric>
+ </SEQUENCE>
+ </coMPInformationItem>
+ <coMPInformationStartTime>
+ <SEQUENCE>
+ <startSFN>
+ 50
+ </startSFN>
+ <startSubframeNumber>
+ 3
+ </startSubframeNumber>
+ </SEQUENCE>
+ </coMPInformationStartTime>
+ </CoMPInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ </iE-Extensions>
+ </CellInformation-Item>
+ </value>
+ </ProtocolIE-Single-Container>
+ <ProtocolIE-Single-Container>
+ <id>7</id>
+ <criticality><ignore/></criticality>
+ <value>
+ <CellInformation-Item>
+ <cell-ID>
+ <pLMN-Identity>02 F9 10</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </cell-ID>
+ <ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </ul-InterferenceOverloadIndication>
+ <ul-HighInterferenceIndicationInfo>
+ <UL-HighInterferenceIndicationInfo-Item>
+ <target-Cell-ID>
+ <pLMN-Identity>02 F8 10</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </target-Cell-ID>
+ <ul-interferenceindication>
+ 1010101010101010
+ </ul-interferenceindication>
+ </UL-HighInterferenceIndicationInfo-Item>
+
+ </ul-HighInterferenceIndicationInfo>
+ <relativeNarrowbandTxPower>
+ <rNTP-PerPRB>
+ 11001100
+ </rNTP-PerPRB>
+ <rNTP-Threshold>
+ <minusSix/>
+ </rNTP-Threshold>
+ <numberOfCellSpecificAntennaPorts>
+ <two/>
+ </numberOfCellSpecificAntennaPorts>
+ <p-B>2 </p-B>
+ <pDCCH-InterferenceImpact>1</pDCCH-InterferenceImpact>
+ </relativeNarrowbandTxPower>
+ <iE-Extensions>
+ <CellInformation-Item-ExtIEs>
+ <id>61</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ABSInformation>
+ <fdd>
+ <abs-pattern-info>
+ 0000011111000001111100000111110000011111
+ </abs-pattern-info>
+ <numberOfCellSpecificAntennaPorts>
+ <one/>
+ </numberOfCellSpecificAntennaPorts>
+ <measurement-subset>
+ 1000001111100000111110000011110000001111
+ </measurement-subset>
+ </fdd>
+ </ABSInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>62</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <InvokeIndication>
+ <abs-information/>
+ </InvokeIndication>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>99</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <SubframeAssignment>
+ <sa6/>
+ </SubframeAssignment>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>100</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <ExtendedULInterferenceOverloadInfo>
+ <associatedSubframes>
+ 11001
+ </associatedSubframes>
+ <extended-ul-InterferenceOverloadIndication>
+ <high-interference/><medium-interference/><low-interference/>
+ </extended-ul-InterferenceOverloadIndication>
+ </ExtendedULInterferenceOverloadInfo>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>106</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <DynamicDLTransmissionInformation>
+ <naics-active>
+ <transmissionModes>
+ 11001101
+ </transmissionModes>
+ <pB-information>
+ 0
+ </pB-information>
+ <pA-list>
+ <dB-1dot77/><dB-3/>
+ </pA-list>
+ </naics-active>
+ </DynamicDLTransmissionInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ <CellInformation-Item-ExtIEs>
+ <id>108</id>
+ <criticality><ignore/></criticality>
+ <extensionValue>
+ <CoMPInformation>
+ <coMPInformationItem>
+ <SEQUENCE>
+ <coMPHypothesisSet>
+ <CoMPHypothesisSetItem>
+ <coMPCellID>
+ <pLMN-Identity>02 F8 11</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000000000111101010110101
+ </eUTRANcellIdentifier>
+ </coMPCellID>
+ <coMPHypothesis>
+ 1110000000000111101010110101
+ </coMPHypothesis>
+ </CoMPHypothesisSetItem>
+ </coMPHypothesisSet>
+ <benefitMetric>
+ -99
+ </benefitMetric>
+ </SEQUENCE>
+ <SEQUENCE>
+ <coMPHypothesisSet>
+ <CoMPHypothesisSetItem>
+ <coMPCellID>
+ <pLMN-Identity>02 F8 12</pLMN-Identity>
+ <eUTRANcellIdentifier>
+ 0000000001100111101010110101
+ </eUTRANcellIdentifier>
+ </coMPCellID>
+ <coMPHypothesis>
+ 1110001100000111101010110101
+ </coMPHypothesis>
+ </CoMPHypothesisSetItem>
+ </coMPHypothesisSet>
+ <benefitMetric>
+ 30
+ </benefitMetric>
+ </SEQUENCE>
+ </coMPInformationItem>
+ <coMPInformationStartTime>
+ <SEQUENCE>
+ <startSFN>
+ 50
+ </startSFN>
+ <startSubframeNumber>
+ 3
+ </startSubframeNumber>
+ </SEQUENCE>
+ </coMPInformationStartTime>
+ </CoMPInformation>
+ </extensionValue>
+ </CellInformation-Item-ExtIEs>
+ </iE-Extensions>
+ </CellInformation-Item>
+ </value>
+ </ProtocolIE-Single-Container>
+ </CellInformation-List>
+ </value>
+ </LoadInformation-IEs>
+ </protocolIEs>
+ </LoadInformation>
+ </value>
+ </initiatingMessage>
+</E2AP-PDU>
--- /dev/null
+/*
+ *
+ * Copyright 2019 AT&T Intellectual Property
+ * Copyright 2019 Nokia
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+#include <errno.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <asn1codec_utils.h>
+
+int
+main(int argc, char* argv[])
+{
+ char responseErrorBuf[1<< 16];
+ uint8_t buf[1 << 16];
+ size_t count = fread(buf, 1, sizeof(buf), stdin);
+ if (count == sizeof(buf)) {
+ printf("#%s failed. Input is too big\n", __func__);
+ exit(-1);
+ }
+ if (!feof(stdin)){
+ printf("#%s failed. Error while reading input: %s\n", __func__, strerror(errno));
+ exit(-1);
+ }
+
+ E2AP_PDU_t *pdu = calloc(1, sizeof(E2AP_PDU_t));
+ if (!unpack_pdu_aux(pdu, count, buf ,sizeof(responseErrorBuf), responseErrorBuf,ATS_BASIC_XER)){
+ printf("#%s failed. Unpacking error %s\n", __func__, responseErrorBuf);
+ exit(-1);
+ }
+
+ responseErrorBuf[0] = 0;
+ asn1_pdu_printer(pdu, sizeof(responseErrorBuf), responseErrorBuf);
+ printf("#%s: %s\n", __func__, responseErrorBuf);
+
+ {
+ size_t per_packed_buf_size;
+ uint8_t per_packed_buf[1 << 16];
+
+ responseErrorBuf[0] = 0;
+ per_packed_buf_size = sizeof(per_packed_buf);
+
+ if (!pack_pdu_aux(pdu,&per_packed_buf_size, per_packed_buf,sizeof(responseErrorBuf), responseErrorBuf, ATS_ALIGNED_BASIC_PER)){
+ printf("#%s failed. Packing error %s\n", __func__, responseErrorBuf);
+ exit(-1);
+ }
+ ASN_STRUCT_FREE(asn_DEF_E2AP_PDU, pdu);
+ printf("#%s packed size:%zu\nPayload:\n", __func__, per_packed_buf_size);
+ for (size_t i= 0; i < per_packed_buf_size; i++)
+ printf("%02x",per_packed_buf[i]);
+ printf("\n");
+
+ pdu =calloc(1, sizeof(E2AP_PDU_t));
+ if (!unpack_pdu_aux(pdu, per_packed_buf_size, per_packed_buf ,sizeof(responseErrorBuf), responseErrorBuf,ATS_ALIGNED_BASIC_PER)){
+ printf("#%s failed. Packing error %s\n", __func__, responseErrorBuf);
+ }
+
+ responseErrorBuf[0] = 0;
+ asn1_pdu_printer(pdu, sizeof(responseErrorBuf), responseErrorBuf);
+ ASN_STRUCT_FREE(asn_DEF_E2AP_PDU, pdu);
+ printf("#%s: %s\n", __func__, responseErrorBuf);
+ }
+ exit(0);
+}
+
+
mode: set
-e2mgr/controllers/controller.go:23.107,31.2 2 1
-e2mgr/controllers/controller.go:33.107,36.2 1 1
-e2mgr/controllers/controller.go:40.72,44.20 2 1
-e2mgr/controllers/controller.go:53.2,54.16 2 1
-e2mgr/controllers/controller.go:59.2,61.16 2 1
-e2mgr/controllers/controller.go:66.2,67.110 2 1
-e2mgr/controllers/controller.go:44.20,47.17 2 1
-e2mgr/controllers/controller.go:47.17,50.4 2 1
-e2mgr/controllers/controller.go:54.16,57.3 2 0
-e2mgr/controllers/controller.go:61.16,64.3 2 1
-e2mgr/controllers/controller.go:70.72,72.53 1 1
-e2mgr/controllers/controller.go:77.2,77.12 1 1
-e2mgr/controllers/controller.go:72.53,76.3 2 1
-e2mgr/controllers/controller.go:80.80,85.16 3 1
-e2mgr/controllers/controller.go:105.2,113.16 6 1
-e2mgr/controllers/controller.go:85.16,86.21 1 1
-e2mgr/controllers/controller.go:87.37,90.46 3 1
-e2mgr/controllers/controller.go:91.55,94.43 3 1
-e2mgr/controllers/controller.go:95.47,98.47 3 1
-e2mgr/controllers/controller.go:99.11,102.46 3 1
-e2mgr/controllers/controller.go:113.16,115.3 1 0
e2mgr/controllers/nodeb_controller.go:69.68,78.2 3 1
e2mgr/controllers/nodeb_controller.go:81.52,85.2 3 1
e2mgr/controllers/nodeb_controller.go:87.118,95.16 6 1
e2mgr/controllers/nodeb_controller.go:249.29,250.81 1 1
e2mgr/controllers/nodeb_controller.go:251.31,252.77 1 0
e2mgr/controllers/nodeb_controller.go:253.10,254.81 1 0
+e2mgr/controllers/controller.go:40.107,48.2 2 1
+e2mgr/controllers/controller.go:50.107,53.2 1 1
+e2mgr/controllers/controller.go:57.72,61.20 2 1
+e2mgr/controllers/controller.go:70.2,71.16 2 1
+e2mgr/controllers/controller.go:76.2,78.16 2 1
+e2mgr/controllers/controller.go:83.2,84.110 2 1
+e2mgr/controllers/controller.go:61.20,64.17 2 1
+e2mgr/controllers/controller.go:64.17,67.4 2 1
+e2mgr/controllers/controller.go:71.16,74.3 2 0
+e2mgr/controllers/controller.go:78.16,81.3 2 1
+e2mgr/controllers/controller.go:87.72,89.53 1 1
+e2mgr/controllers/controller.go:94.2,94.12 1 1
+e2mgr/controllers/controller.go:89.53,93.3 2 1
+e2mgr/controllers/controller.go:97.80,102.16 3 1
+e2mgr/controllers/controller.go:122.2,130.16 6 1
+e2mgr/controllers/controller.go:102.16,103.21 1 1
+e2mgr/controllers/controller.go:104.37,107.46 3 1
+e2mgr/controllers/controller.go:108.55,111.43 3 1
+e2mgr/controllers/controller.go:112.47,115.47 3 1
+e2mgr/controllers/controller.go:116.11,119.46 3 1
+e2mgr/controllers/controller.go:130.16,132.3 1 0
e2mgr/logger/logger.go:71.58,72.85 1 1
e2mgr/logger/logger.go:75.2,75.27 1 1
e2mgr/logger/logger.go:72.85,74.3 1 1
e2mgr/logger/logger.go:153.62,173.2 2 1
e2mgr/logger/logger.go:175.92,177.2 1 1
e2mgr/logger/logger.go:179.84,183.2 3 1
-e2mgr/main/http_server.go:40.13,44.16 4 0
-e2mgr/main/http_server.go:48.2,61.59 13 0
-e2mgr/main/http_server.go:44.16,47.3 2 0
-e2mgr/main/http_server.go:65.133,72.2 4 0
-e2mgr/main/http_server.go:74.163,87.58 10 0
-e2mgr/main/http_server.go:87.58,89.3 1 0
-e2mgr/models/notification_response.go:14.86,16.2 1 0
+e2mgr/main/http_server.go:39.13,43.16 4 0
+e2mgr/main/http_server.go:47.2,60.59 13 0
+e2mgr/main/http_server.go:43.16,46.3 2 0
+e2mgr/main/http_server.go:63.163,76.58 10 0
+e2mgr/main/http_server.go:76.58,78.3 1 0
e2mgr/models/e2_request_message.go:33.59,35.2 1 1
e2mgr/models/e2_request_message.go:37.65,39.2 1 1
e2mgr/models/e2_request_message.go:41.128,43.2 1 1
e2mgr/models/e2_request_message.go:45.90,52.2 4 1
-e2mgr/handlers/endc_setup_response_notification_handler.go:34.91,40.16 3 0
-e2mgr/handlers/endc_setup_response_notification_handler.go:44.2,45.8 2 0
-e2mgr/handlers/endc_setup_response_notification_handler.go:40.16,42.3 1 0
-e2mgr/handlers/endc_setup_response_notification_handler.go:45.8,47.17 1 0
-e2mgr/handlers/endc_setup_response_notification_handler.go:72.3,73.44 2 0
-e2mgr/handlers/endc_setup_response_notification_handler.go:47.17,62.87 12 0
-e2mgr/handlers/endc_setup_response_notification_handler.go:62.87,64.5 1 0
-e2mgr/handlers/endc_setup_response_notification_handler.go:64.10,66.30 2 0
-e2mgr/handlers/endc_setup_response_notification_handler.go:66.30,68.6 1 0
-e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:32.94,35.54 2 1
-e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:68.2,68.27 1 1
-e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:35.54,38.124 2 1
-e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:38.124,40.82 2 1
-e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:40.82,43.72 3 1
-e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:43.72,44.38 1 1
-e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:44.38,45.50 1 1
-e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:46.53,49.22 3 1
-e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:52.58,53.135 1 1
-e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:54.70,56.66 2 1
-e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:49.22,51.9 1 0
-e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:56.66,58.9 1 1
-e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:58.14,60.9 1 0
-e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:71.196,73.16 2 1
-e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:77.2,79.50 2 1
-e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:73.16,75.3 1 0
-e2mgr/handlers/x2apSetup_response_notification_handler.go:33.91,38.16 3 0
-e2mgr/handlers/x2apSetup_response_notification_handler.go:42.2,44.8 2 0
-e2mgr/handlers/x2apSetup_response_notification_handler.go:38.16,40.3 1 0
-e2mgr/handlers/x2apSetup_response_notification_handler.go:44.8,45.17 1 0
-e2mgr/handlers/x2apSetup_response_notification_handler.go:69.3,70.44 2 0
-e2mgr/handlers/x2apSetup_response_notification_handler.go:45.17,60.87 12 0
-e2mgr/handlers/x2apSetup_response_notification_handler.go:60.87,62.5 1 0
-e2mgr/handlers/x2apSetup_response_notification_handler.go:62.10,64.30 2 0
-e2mgr/handlers/x2apSetup_response_notification_handler.go:64.30,66.6 1 0
-e2mgr/handlers/delete_all_request_handler.go:41.68,47.2 1 1
-e2mgr/handlers/delete_all_request_handler.go:49.158,52.16 2 1
-e2mgr/handlers/delete_all_request_handler.go:56.2,56.26 1 1
-e2mgr/handlers/delete_all_request_handler.go:61.2,68.16 6 1
-e2mgr/handlers/delete_all_request_handler.go:72.2,72.12 1 1
-e2mgr/handlers/delete_all_request_handler.go:52.16,54.3 1 1
-e2mgr/handlers/delete_all_request_handler.go:56.26,58.3 1 1
-e2mgr/handlers/delete_all_request_handler.go:68.16,70.3 1 0
-e2mgr/handlers/delete_all_request_handler.go:75.116,78.16 2 1
-e2mgr/handlers/delete_all_request_handler.go:83.2,83.30 1 1
-e2mgr/handlers/delete_all_request_handler.go:87.2,87.42 1 1
-e2mgr/handlers/delete_all_request_handler.go:105.2,106.18 2 1
-e2mgr/handlers/delete_all_request_handler.go:78.16,81.3 2 1
-e2mgr/handlers/delete_all_request_handler.go:83.30,85.3 1 1
-e2mgr/handlers/delete_all_request_handler.go:87.42,91.17 2 1
-e2mgr/handlers/delete_all_request_handler.go:97.3,97.20 1 1
-e2mgr/handlers/delete_all_request_handler.go:102.3,102.55 1 1
-e2mgr/handlers/delete_all_request_handler.go:91.17,94.12 2 1
-e2mgr/handlers/delete_all_request_handler.go:97.20,100.12 2 1
-e2mgr/handlers/delete_all_request_handler.go:109.142,112.18 2 1
-e2mgr/handlers/delete_all_request_handler.go:116.2,120.16 3 1
-e2mgr/handlers/delete_all_request_handler.go:126.2,126.27 1 1
-e2mgr/handlers/delete_all_request_handler.go:112.18,114.3 1 1
-e2mgr/handlers/delete_all_request_handler.go:120.16,124.3 2 1
-e2mgr/handlers/delete_all_request_handler.go:126.27,129.3 1 0
-e2mgr/handlers/delete_all_request_handler.go:132.146,134.65 1 1
-e2mgr/handlers/delete_all_request_handler.go:138.2,138.70 1 1
-e2mgr/handlers/delete_all_request_handler.go:143.2,147.16 3 1
-e2mgr/handlers/delete_all_request_handler.go:153.2,153.137 1 1
-e2mgr/handlers/delete_all_request_handler.go:134.65,136.3 1 1
-e2mgr/handlers/delete_all_request_handler.go:138.70,141.3 2 0
-e2mgr/handlers/delete_all_request_handler.go:147.16,151.3 2 1
+e2mgr/models/notification_request.go:30.125,38.2 1 0
+e2mgr/models/notification_response.go:31.86,33.2 1 0
+e2mgr/providers/incoming_request_handler_provider.go:41.79,47.2 1 0
+e2mgr/providers/incoming_request_handler_provider.go:50.91,55.2 1 0
+e2mgr/providers/incoming_request_handler_provider.go:57.121,60.9 2 0
+e2mgr/providers/incoming_request_handler_provider.go:65.2,65.21 1 0
+e2mgr/providers/incoming_request_handler_provider.go:60.9,63.3 2 0
+e2mgr/providers/notification_handler_provider.go:34.160,40.2 1 1
+e2mgr/providers/notification_handler_provider.go:42.164,54.2 1 1
+e2mgr/providers/notification_handler_provider.go:56.123,59.9 2 1
+e2mgr/providers/notification_handler_provider.go:63.2,63.21 1 1
+e2mgr/providers/notification_handler_provider.go:59.9,61.3 1 1
+e2mgr/providers/request_handler_provider.go:32.105,35.2 2 1
+e2mgr/providers/request_handler_provider.go:37.98,42.2 1 1
+e2mgr/providers/request_handler_provider.go:44.120,47.9 2 1
+e2mgr/providers/request_handler_provider.go:53.2,53.21 1 1
+e2mgr/providers/request_handler_provider.go:47.9,51.3 3 1
+e2mgr/rNibWriter/rNibWriter.go:47.43,49.22 1 1
+e2mgr/rNibWriter/rNibWriter.go:49.22,52.4 2 0
+e2mgr/rNibWriter/rNibWriter.go:53.25,55.4 1 0
+e2mgr/rNibWriter/rNibWriter.go:60.86,62.2 1 1
+e2mgr/rNibWriter/rNibWriter.go:66.33,68.2 1 1
+e2mgr/rNibWriter/rNibWriter.go:72.119,76.72 2 1
+e2mgr/rNibWriter/rNibWriter.go:79.2,81.16 3 1
+e2mgr/rNibWriter/rNibWriter.go:84.2,86.19 3 1
+e2mgr/rNibWriter/rNibWriter.go:89.2,91.24 2 1
+e2mgr/rNibWriter/rNibWriter.go:99.2,99.28 1 1
+e2mgr/rNibWriter/rNibWriter.go:105.2,105.28 1 1
+e2mgr/rNibWriter/rNibWriter.go:111.2,112.16 2 1
+e2mgr/rNibWriter/rNibWriter.go:115.2,115.24 1 1
+e2mgr/rNibWriter/rNibWriter.go:125.2,125.12 1 1
+e2mgr/rNibWriter/rNibWriter.go:76.72,78.3 1 1
+e2mgr/rNibWriter/rNibWriter.go:81.16,83.3 1 1
+e2mgr/rNibWriter/rNibWriter.go:86.19,88.3 1 1
+e2mgr/rNibWriter/rNibWriter.go:91.24,93.20 2 1
+e2mgr/rNibWriter/rNibWriter.go:96.3,96.35 1 1
+e2mgr/rNibWriter/rNibWriter.go:93.20,95.4 1 0
+e2mgr/rNibWriter/rNibWriter.go:99.28,101.20 2 1
+e2mgr/rNibWriter/rNibWriter.go:101.20,103.4 1 1
+e2mgr/rNibWriter/rNibWriter.go:105.28,107.20 2 1
+e2mgr/rNibWriter/rNibWriter.go:107.20,109.4 1 1
+e2mgr/rNibWriter/rNibWriter.go:112.16,114.3 1 1
+e2mgr/rNibWriter/rNibWriter.go:115.24,117.17 2 1
+e2mgr/rNibWriter/rNibWriter.go:120.3,121.17 2 1
+e2mgr/rNibWriter/rNibWriter.go:117.17,119.4 1 0
+e2mgr/rNibWriter/rNibWriter.go:121.17,123.4 1 0
+e2mgr/rNibWriter/rNibWriter.go:131.142,137.20 3 1
+e2mgr/rNibWriter/rNibWriter.go:141.2,143.16 2 1
+e2mgr/rNibWriter/rNibWriter.go:147.2,152.16 4 1
+e2mgr/rNibWriter/rNibWriter.go:156.2,156.12 1 1
+e2mgr/rNibWriter/rNibWriter.go:137.20,139.3 1 1
+e2mgr/rNibWriter/rNibWriter.go:143.16,145.3 1 1
+e2mgr/rNibWriter/rNibWriter.go:152.16,154.3 1 1
+e2mgr/rNibWriter/rNibWriter.go:162.13,164.2 1 1
+e2mgr/rNibWriter/rNibWriter.go:166.144,167.29 1 1
+e2mgr/rNibWriter/rNibWriter.go:184.2,184.19 1 1
+e2mgr/rNibWriter/rNibWriter.go:167.29,170.17 3 1
+e2mgr/rNibWriter/rNibWriter.go:173.3,174.20 2 1
+e2mgr/rNibWriter/rNibWriter.go:177.3,179.20 3 1
+e2mgr/rNibWriter/rNibWriter.go:182.3,182.39 1 1
+e2mgr/rNibWriter/rNibWriter.go:170.17,172.4 1 0
+e2mgr/rNibWriter/rNibWriter.go:174.20,176.4 1 1
+e2mgr/rNibWriter/rNibWriter.go:179.20,181.4 1 0
+e2mgr/rNibWriter/rNibWriter.go:187.143,188.29 1 1
+e2mgr/rNibWriter/rNibWriter.go:205.2,205.19 1 1
+e2mgr/rNibWriter/rNibWriter.go:188.29,191.17 3 1
+e2mgr/rNibWriter/rNibWriter.go:194.3,195.20 2 1
+e2mgr/rNibWriter/rNibWriter.go:198.3,200.20 3 1
+e2mgr/rNibWriter/rNibWriter.go:203.3,203.39 1 1
+e2mgr/rNibWriter/rNibWriter.go:191.17,193.4 1 0
+e2mgr/rNibWriter/rNibWriter.go:195.20,197.4 1 1
+e2mgr/rNibWriter/rNibWriter.go:200.20,202.4 1 0
+e2mgr/rNibWriter/rNibWriter.go:208.55,210.2 1 1
+e2mgr/rmrCgo/rmrCgoTypes.go:31.87,39.2 1 1
+e2mgr/rmrCgo/rmrCgoTypes.go:41.96,48.2 1 1
+e2mgr/rmrCgo/rmrCgoTypes.go:119.32,121.2 1 0
+e2mgr/rmrCgo/rmrCgoUtils.go:32.66,48.93 7 0
+e2mgr/rmrCgo/rmrCgoUtils.go:52.2,52.13 1 0
+e2mgr/rmrCgo/rmrCgoUtils.go:48.93,50.3 1 0
+e2mgr/rmrCgo/rmrCgoUtils.go:55.115,68.50 9 0
+e2mgr/rmrCgo/rmrCgoUtils.go:73.2,74.51 2 0
+e2mgr/rmrCgo/rmrCgoUtils.go:78.2,82.16 4 0
+e2mgr/rmrCgo/rmrCgoUtils.go:86.2,87.16 2 0
+e2mgr/rmrCgo/rmrCgoUtils.go:91.2,92.34 2 0
+e2mgr/rmrCgo/rmrCgoUtils.go:96.2,96.14 1 0
+e2mgr/rmrCgo/rmrCgoUtils.go:68.50,70.3 1 0
+e2mgr/rmrCgo/rmrCgoUtils.go:74.51,76.3 1 0
+e2mgr/rmrCgo/rmrCgoUtils.go:82.16,85.3 1 0
+e2mgr/rmrCgo/rmrCgoUtils.go:87.16,90.3 1 0
+e2mgr/rmrCgo/rmrCgoUtils.go:92.34,95.3 1 0
+e2mgr/rmrCgo/rmrCgoUtils.go:100.47,101.23 1 0
+e2mgr/rmrCgo/rmrCgoUtils.go:101.23,102.24 1 0
+e2mgr/rmrCgo/rmrCgoUtils.go:105.3,105.138 1 0
+e2mgr/rmrCgo/rmrCgoUtils.go:102.24,104.4 1 0
+e2mgr/rmrCgo/rmrCgoApi.go:34.99,41.21 6 1
+e2mgr/rmrCgo/rmrCgoApi.go:48.2,50.11 3 1
+e2mgr/rmrCgo/rmrCgoApi.go:41.21,43.39 2 1
+e2mgr/rmrCgo/rmrCgoApi.go:43.39,46.4 2 0
+e2mgr/rmrCgo/rmrCgoApi.go:53.71,59.21 6 0
+e2mgr/rmrCgo/rmrCgoApi.go:66.2,74.21 7 0
+e2mgr/rmrCgo/rmrCgoApi.go:80.2,81.50 2 0
+e2mgr/rmrCgo/rmrCgoApi.go:59.21,63.3 3 0
+e2mgr/rmrCgo/rmrCgoApi.go:74.21,78.3 3 0
+e2mgr/rmrCgo/rmrCgoApi.go:84.46,93.21 7 0
+e2mgr/rmrCgo/rmrCgoApi.go:99.2,103.18 5 0
+e2mgr/rmrCgo/rmrCgoApi.go:93.21,97.3 3 0
+e2mgr/rmrCgo/rmrCgoApi.go:106.39,112.2 5 0
+e2mgr/rmrCgo/rmrCgoApi.go:114.36,117.2 2 1
+e2mgr/rmrCgo/rmrCgoApi.go:119.29,123.2 3 0
+e2mgr/rnibBuilders/node_info_builder.go:25.111,35.2 8 1
+e2mgr/services/rmr_service.go:38.90,40.2 1 1
+e2mgr/services/rmr_service.go:53.61,62.2 1 1
+e2mgr/services/rmr_service.go:65.21,80.2 9 1
+e2mgr/services/rmr_service.go:82.76,93.16 6 0
+e2mgr/services/rmr_service.go:93.16,96.3 2 0
+e2mgr/services/rmr_service.go:100.40,102.6 1 1
+e2mgr/services/rmr_service.go:102.6,107.17 3 1
+e2mgr/services/rmr_service.go:111.3,111.79 1 0
+e2mgr/services/rmr_service.go:107.17,108.12 1 1
+e2mgr/services/rmr_service.go:115.36,116.5 1 0
+e2mgr/services/rmr_service.go:116.5,119.10 2 0
+e2mgr/services/rmr_service.go:125.3,126.29 2 0
+e2mgr/services/rmr_service.go:119.10,122.9 2 0
+e2mgr/services/rmr_service.go:130.37,131.35 1 1
+e2mgr/services/rmr_service.go:131.35,135.3 3 1
+e2mgr/services/rnib_reader_service.go:30.83,32.2 1 0
+e2mgr/services/rnib_reader_service.go:36.94,38.2 1 0
+e2mgr/services/rnib_reader_service.go:40.90,43.18 2 0
+e2mgr/services/rnib_reader_service.go:47.2,49.18 2 0
+e2mgr/services/rnib_reader_service.go:53.2,55.26 2 0
+e2mgr/services/rnib_reader_service.go:43.18,45.3 1 0
+e2mgr/services/rnib_reader_service.go:49.18,51.3 1 0
e2mgr/handlers/endc_setup_request_handler.go:36.107,40.2 1 1
e2mgr/handlers/endc_setup_request_handler.go:42.111,46.20 3 0
e2mgr/handlers/endc_setup_request_handler.go:52.2,52.16 1 0
e2mgr/handlers/endc_setup_request_handler.go:60.16,62.3 1 0
e2mgr/handlers/endc_setup_request_handler.go:62.8,69.3 5 1
e2mgr/handlers/endc_setup_request_handler.go:74.53,76.2 1 0
-e2mgr/handlers/setup_response_notification_handler.go:33.91,36.16 2 1
-e2mgr/handlers/setup_response_notification_handler.go:40.2,42.8 3 1
-e2mgr/handlers/setup_response_notification_handler.go:46.2,46.136 1 1
-e2mgr/handlers/setup_response_notification_handler.go:36.16,38.3 1 1
-e2mgr/handlers/setup_response_notification_handler.go:42.8,45.3 2 0
-e2mgr/handlers/setup_response_notification_handler.go:49.104,51.2 1 1
-e2mgr/handlers/x2Setup_failure_response_notification_handler.go:32.91,37.16 3 0
-e2mgr/handlers/x2Setup_failure_response_notification_handler.go:41.2,42.8 2 0
-e2mgr/handlers/x2Setup_failure_response_notification_handler.go:37.16,39.3 1 0
-e2mgr/handlers/x2Setup_failure_response_notification_handler.go:42.8,43.29 1 0
-e2mgr/handlers/x2Setup_failure_response_notification_handler.go:64.3,65.44 2 0
-e2mgr/handlers/x2Setup_failure_response_notification_handler.go:43.29,55.87 9 0
-e2mgr/handlers/x2Setup_failure_response_notification_handler.go:55.87,57.5 1 0
-e2mgr/handlers/x2Setup_failure_response_notification_handler.go:57.10,59.30 2 0
-e2mgr/handlers/x2Setup_failure_response_notification_handler.go:59.30,61.6 1 0
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:36.78,37.25 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:51.2,51.12 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:38.31,40.130 2 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:41.28,43.131 2 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:44.27,46.113 2 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:47.23,49.128 2 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:54.114,57.37 2 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:63.2,63.41 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:71.2,71.44 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:79.2,79.171 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:98.2,98.22 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:57.37,61.3 2 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:63.41,64.22 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:67.3,67.93 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:64.22,66.4 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:71.44,72.22 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:75.3,75.93 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:72.22,74.4 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:79.171,80.22 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:83.3,87.91 5 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:95.3,95.67 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:80.22,82.4 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:87.91,94.4 4 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:102.90,105.54 2 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:138.2,138.27 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:105.54,108.120 2 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:108.120,110.74 2 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:110.74,113.64 3 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:113.64,114.34 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:114.34,115.46 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:116.49,119.22 3 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:122.54,123.131 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:124.66,126.66 2 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:119.22,121.9 1 0
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:126.66,128.9 1 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:128.14,130.9 1 0
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:141.192,143.16 2 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:147.2,149.46 2 1
-e2mgr/handlers/x2setupFailureResponseToProtobuf.go:143.16,145.3 1 0
e2mgr/handlers/endc_x2Setup_failure_response_notification_handler.go:33.91,38.16 3 0
e2mgr/handlers/endc_x2Setup_failure_response_notification_handler.go:42.2,43.8 2 0
e2mgr/handlers/endc_x2Setup_failure_response_notification_handler.go:38.16,40.3 1 0
e2mgr/handlers/endc_x2Setup_failure_response_notification_handler.go:56.87,58.5 1 0
e2mgr/handlers/endc_x2Setup_failure_response_notification_handler.go:58.10,60.30 2 0
e2mgr/handlers/endc_x2Setup_failure_response_notification_handler.go:60.30,62.6 1 0
-e2mgr/handlers/ric_enb_load_information_notification_handler.go:13.91,17.16 2 0
-e2mgr/handlers/ric_enb_load_information_notification_handler.go:21.2,22.151 2 0
-e2mgr/handlers/ric_enb_load_information_notification_handler.go:17.16,19.3 1 0
-e2mgr/handlers/ranLostConnectionHandler.go:36.153,41.2 1 1
-e2mgr/handlers/ranLostConnectionHandler.go:43.91,49.86 4 1
-e2mgr/handlers/ranLostConnectionHandler.go:63.2,65.8 3 1
-e2mgr/handlers/ranLostConnectionHandler.go:49.86,51.3 1 1
-e2mgr/handlers/ranLostConnectionHandler.go:51.8,55.83 4 1
-e2mgr/handlers/ranLostConnectionHandler.go:55.83,57.4 1 1
-e2mgr/handlers/ranLostConnectionHandler.go:57.9,61.4 2 1
-e2mgr/handlers/ranLostConnectionHandler.go:65.8,68.3 2 1
-e2mgr/handlers/ranLostConnectionHandler.go:72.70,73.28 1 1
-e2mgr/handlers/ranLostConnectionHandler.go:74.131,75.63 1 1
-e2mgr/handlers/ranLostConnectionHandler.go:76.46,77.153 1 1
-e2mgr/handlers/ranLostConnectionHandler.go:78.10,79.60 1 1
+e2mgr/handlers/endc_x2apSetupRequest_asn1_packer.go:32.221,39.96 4 1
+e2mgr/handlers/endc_x2apSetupRequest_asn1_packer.go:43.2,43.27 1 1
+e2mgr/handlers/endc_x2apSetupRequest_asn1_packer.go:52.2,52.39 1 1
+e2mgr/handlers/endc_x2apSetupRequest_asn1_packer.go:39.96,41.3 1 1
+e2mgr/handlers/endc_x2apSetupRequest_asn1_packer.go:43.27,46.119 3 0
+e2mgr/handlers/endc_x2apSetupRequest_asn1_packer.go:46.119,49.4 2 0
e2mgr/handlers/setup_request_handler.go:58.99,62.2 1 1
e2mgr/handlers/setup_request_handler.go:64.107,68.20 3 0
e2mgr/handlers/setup_request_handler.go:74.2,74.16 1 0
e2mgr/handlers/setup_request_handler.go:139.49,141.2 1 0
e2mgr/handlers/setup_request_handler.go:143.13,147.42 2 1
e2mgr/handlers/setup_request_handler.go:147.42,148.13 1 0
+e2mgr/handlers/x2Setup_failure_response_notification_handler.go:32.91,37.16 3 0
+e2mgr/handlers/x2Setup_failure_response_notification_handler.go:41.2,42.8 2 0
+e2mgr/handlers/x2Setup_failure_response_notification_handler.go:37.16,39.3 1 0
+e2mgr/handlers/x2Setup_failure_response_notification_handler.go:42.8,43.29 1 0
+e2mgr/handlers/x2Setup_failure_response_notification_handler.go:64.3,65.44 2 0
+e2mgr/handlers/x2Setup_failure_response_notification_handler.go:43.29,55.87 9 0
+e2mgr/handlers/x2Setup_failure_response_notification_handler.go:55.87,57.5 1 0
+e2mgr/handlers/x2Setup_failure_response_notification_handler.go:57.10,59.30 2 0
+e2mgr/handlers/x2Setup_failure_response_notification_handler.go:59.30,61.6 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:31.98,33.52 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:37.2,39.116 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:43.2,45.35 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:49.2,51.31 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:55.2,59.93 3 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:63.2,67.87 3 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:71.2,71.176 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:33.52,35.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:39.116,41.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:45.35,47.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:51.31,53.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:59.93,61.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:67.87,69.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:74.144,78.16 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:82.2,85.16 3 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:89.2,91.12 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:78.16,80.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:85.16,87.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:94.106,96.84 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:100.2,100.80 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:96.84,98.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:103.135,110.16 4 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:114.2,114.55 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:118.2,120.16 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:124.2,124.53 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:128.2,130.41 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:140.2,142.49 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:146.2,148.16 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:152.2,152.12 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:110.16,112.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:114.55,116.3 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:120.16,122.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:124.53,126.3 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:130.41,133.17 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:137.3,137.128 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:133.17,135.4 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:142.49,144.3 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:148.16,150.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:156.42,160.2 3 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:162.180,164.62 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:168.2,168.20 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:164.62,166.3 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:171.171,173.66 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:177.2,179.103 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:183.2,185.54 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:173.66,175.3 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:179.103,181.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:188.84,193.2 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:195.82,204.37 3 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:208.2,208.22 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:204.37,206.3 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:211.66,213.2 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:215.54,217.2 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:219.169,229.28 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:233.2,233.35 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:229.28,231.3 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:236.120,238.58 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:242.2,242.104 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:238.58,240.3 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:245.174,248.57 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:256.2,256.14 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:248.57,254.3 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:259.171,262.50 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:266.2,268.119 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:272.2,274.54 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:262.50,264.3 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:268.119,270.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:277.130,280.19 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:284.2,286.22 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:290.2,290.114 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:280.19,282.3 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:286.22,288.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:293.132,297.19 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:301.2,303.22 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:307.2,311.116 3 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:315.2,315.94 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:297.19,299.3 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:303.22,305.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:311.116,313.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:318.117,321.33 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:325.2,332.29 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:321.33,323.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:335.117,338.33 2 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:342.2,349.29 2 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:338.33,340.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:352.144,355.35 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:364.2,364.133 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:356.31,357.59 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:358.31,359.59 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:360.40,361.87 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:367.180,371.56 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:375.2,377.59 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:381.2,381.53 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:371.56,373.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:377.59,379.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:384.170,392.2 3 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:394.135,398.22 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:402.2,402.29 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:406.2,408.59 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:412.2,412.58 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:398.22,400.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:402.29,404.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:408.59,410.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:415.50,417.28 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:421.2,421.12 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:417.28,419.3 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:424.202,427.36 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:431.2,433.54 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:438.2,438.51 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:442.2,444.16 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:448.2,448.21 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:452.2,452.47 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:427.36,429.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:433.54,436.3 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:438.51,440.3 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:444.16,446.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:448.21,450.3 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:455.161,458.105 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:462.2,462.103 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:466.2,466.107 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:458.105,460.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:462.103,464.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:469.136,472.44 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:476.2,478.44 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:482.2,482.45 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:472.44,474.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:478.44,480.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:485.110,490.2 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:492.145,498.102 3 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:502.2,504.69 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:509.2,509.32 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:498.102,500.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:504.69,507.3 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:512.146,516.16 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:520.2,525.30 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:516.16,518.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:528.127,535.16 4 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:539.2,539.40 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:543.2,545.106 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:549.2,551.65 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:561.2,561.30 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:535.16,537.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:539.40,541.3 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:545.106,547.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:551.65,554.17 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:558.3,558.107 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:554.17,556.4 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:564.141,567.16 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:571.2,572.12 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:567.16,569.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:575.143,579.2 3 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:581.152,585.2 3 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:587.161,591.2 3 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:593.142,596.16 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:600.2,601.12 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:596.16,598.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:604.159,607.16 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:611.2,612.12 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:607.16,609.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:615.161,616.31 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:632.2,632.12 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:616.31,620.12 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:624.3,626.17 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:620.12,621.12 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:626.17,628.4 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:635.114,641.16 3 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:645.2,645.69 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:653.2,653.12 1 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:641.16,643.3 1 0
+e2mgr/handlers/enb_load_information_to_protobuf.go:645.69,648.17 2 1
+e2mgr/handlers/enb_load_information_to_protobuf.go:648.17,650.4 1 0
+e2mgr/handlers/endc_configuration_update_handler.go:36.54,43.16 6 1
+e2mgr/handlers/endc_configuration_update_handler.go:67.2,67.230 1 1
+e2mgr/handlers/endc_configuration_update_handler.go:43.16,45.13 2 1
+e2mgr/handlers/endc_configuration_update_handler.go:53.3,53.93 1 1
+e2mgr/handlers/endc_configuration_update_handler.go:45.13,50.4 4 1
+e2mgr/handlers/endc_configuration_update_handler.go:50.9,52.4 1 0
+e2mgr/handlers/endc_configuration_update_handler.go:54.8,58.13 4 0
+e2mgr/handlers/endc_configuration_update_handler.go:58.13,63.4 4 0
+e2mgr/handlers/endc_configuration_update_handler.go:63.9,65.4 1 0
+e2mgr/handlers/endc_setup_response_notification_handler.go:34.91,40.16 3 0
+e2mgr/handlers/endc_setup_response_notification_handler.go:44.2,45.8 2 0
+e2mgr/handlers/endc_setup_response_notification_handler.go:40.16,42.3 1 0
+e2mgr/handlers/endc_setup_response_notification_handler.go:45.8,47.17 1 0
+e2mgr/handlers/endc_setup_response_notification_handler.go:72.3,73.44 2 0
+e2mgr/handlers/endc_setup_response_notification_handler.go:47.17,62.87 12 0
+e2mgr/handlers/endc_setup_response_notification_handler.go:62.87,64.5 1 0
+e2mgr/handlers/endc_setup_response_notification_handler.go:64.10,66.30 2 0
+e2mgr/handlers/endc_setup_response_notification_handler.go:66.30,68.6 1 0
+e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:32.94,35.54 2 1
+e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:68.2,68.27 1 1
+e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:35.54,38.124 2 1
+e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:38.124,40.82 2 1
+e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:40.82,43.72 3 1
+e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:43.72,44.38 1 1
+e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:44.38,45.50 1 1
+e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:46.53,49.22 3 1
+e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:52.58,53.135 1 1
+e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:54.70,56.66 2 1
+e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:49.22,51.9 1 0
+e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:56.66,58.9 1 1
+e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:58.14,60.9 1 0
+e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:71.196,73.16 2 1
+e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:77.2,79.50 2 1
+e2mgr/handlers/endc_x2setupFailureResponseToProtobuf.go:73.16,75.3 1 0
+e2mgr/handlers/setup_response_notification_handler.go:33.91,36.16 2 1
+e2mgr/handlers/setup_response_notification_handler.go:40.2,42.8 3 1
+e2mgr/handlers/setup_response_notification_handler.go:46.2,46.136 1 1
+e2mgr/handlers/setup_response_notification_handler.go:36.16,38.3 1 1
+e2mgr/handlers/setup_response_notification_handler.go:42.8,45.3 2 0
+e2mgr/handlers/setup_response_notification_handler.go:49.104,51.2 1 1
+e2mgr/handlers/x2apSetupRequest_asn1_packer.go:32.217,39.96 4 1
+e2mgr/handlers/x2apSetupRequest_asn1_packer.go:43.2,43.27 1 1
+e2mgr/handlers/x2apSetupRequest_asn1_packer.go:51.2,51.39 1 1
+e2mgr/handlers/x2apSetupRequest_asn1_packer.go:39.96,41.3 1 1
+e2mgr/handlers/x2apSetupRequest_asn1_packer.go:43.27,46.119 3 0
+e2mgr/handlers/x2apSetupRequest_asn1_packer.go:46.119,49.4 2 0
e2mgr/handlers/x2enb_configuration_update_handler.go:36.54,43.16 6 1
e2mgr/handlers/x2enb_configuration_update_handler.go:68.2,68.230 1 1
e2mgr/handlers/x2enb_configuration_update_handler.go:43.16,45.12 2 1
e2mgr/handlers/x2setupResponseToProtobuf.go:430.198,432.16 2 1
e2mgr/handlers/x2setupResponseToProtobuf.go:436.2,437.39 2 1
e2mgr/handlers/x2setupResponseToProtobuf.go:432.16,434.3 1 0
-e2mgr/handlers/endc_configuration_update_handler.go:36.54,43.16 6 1
-e2mgr/handlers/endc_configuration_update_handler.go:67.2,67.230 1 1
-e2mgr/handlers/endc_configuration_update_handler.go:43.16,45.13 2 1
-e2mgr/handlers/endc_configuration_update_handler.go:53.3,53.93 1 1
-e2mgr/handlers/endc_configuration_update_handler.go:45.13,50.4 4 1
-e2mgr/handlers/endc_configuration_update_handler.go:50.9,52.4 1 0
-e2mgr/handlers/endc_configuration_update_handler.go:54.8,58.13 4 0
-e2mgr/handlers/endc_configuration_update_handler.go:58.13,63.4 4 0
-e2mgr/handlers/endc_configuration_update_handler.go:63.9,65.4 1 0
-e2mgr/handlers/endc_x2apSetupRequest_asn1_packer.go:32.221,39.96 4 1
-e2mgr/handlers/endc_x2apSetupRequest_asn1_packer.go:43.2,43.27 1 1
-e2mgr/handlers/endc_x2apSetupRequest_asn1_packer.go:52.2,52.39 1 1
-e2mgr/handlers/endc_x2apSetupRequest_asn1_packer.go:39.96,41.3 1 1
-e2mgr/handlers/endc_x2apSetupRequest_asn1_packer.go:43.27,46.119 3 0
-e2mgr/handlers/endc_x2apSetupRequest_asn1_packer.go:46.119,49.4 2 0
-e2mgr/handlers/x2apPdu_asn1_unpacker.go:36.158,39.16 2 1
-e2mgr/handlers/x2apPdu_asn1_unpacker.go:43.2,46.132 3 1
-e2mgr/handlers/x2apPdu_asn1_unpacker.go:50.2,50.27 1 1
-e2mgr/handlers/x2apPdu_asn1_unpacker.go:55.2,55.17 1 1
-e2mgr/handlers/x2apPdu_asn1_unpacker.go:39.16,41.3 1 0
-e2mgr/handlers/x2apPdu_asn1_unpacker.go:46.132,48.3 1 1
-e2mgr/handlers/x2apPdu_asn1_unpacker.go:50.27,53.3 2 1
-e2mgr/handlers/x2apPdu_asn1_unpacker.go:58.175,60.16 2 1
-e2mgr/handlers/x2apPdu_asn1_unpacker.go:64.2,67.27 3 1
-e2mgr/handlers/x2apPdu_asn1_unpacker.go:73.2,73.62 1 1
-e2mgr/handlers/x2apPdu_asn1_unpacker.go:60.16,62.3 1 1
-e2mgr/handlers/x2apPdu_asn1_unpacker.go:67.27,71.3 3 1
-e2mgr/handlers/x2apSetupRequest_asn1_packer.go:32.217,39.96 4 1
-e2mgr/handlers/x2apSetupRequest_asn1_packer.go:43.2,43.27 1 1
-e2mgr/handlers/x2apSetupRequest_asn1_packer.go:51.2,51.39 1 1
-e2mgr/handlers/x2apSetupRequest_asn1_packer.go:39.96,41.3 1 1
-e2mgr/handlers/x2apSetupRequest_asn1_packer.go:43.27,46.119 3 0
-e2mgr/handlers/x2apSetupRequest_asn1_packer.go:46.119,49.4 2 0
+e2mgr/handlers/enb_load_information_notification_handler.go:17.134,21.2 1 1
+e2mgr/handlers/enb_load_information_notification_handler.go:23.43,25.2 1 1
+e2mgr/handlers/enb_load_information_notification_handler.go:27.201,42.16 2 1
+e2mgr/handlers/enb_load_information_notification_handler.go:47.2,53.18 4 1
+e2mgr/handlers/enb_load_information_notification_handler.go:58.2,62.20 3 1
+e2mgr/handlers/enb_load_information_notification_handler.go:67.2,67.190 1 1
+e2mgr/handlers/enb_load_information_notification_handler.go:42.16,45.3 2 1
+e2mgr/handlers/enb_load_information_notification_handler.go:53.18,56.3 2 0
+e2mgr/handlers/enb_load_information_notification_handler.go:62.20,65.3 2 0
e2mgr/handlers/endc_x2setupResponseToProtobuf.go:39.80,43.36 3 1
e2mgr/handlers/endc_x2setupResponseToProtobuf.go:53.2,53.104 1 1
e2mgr/handlers/endc_x2setupResponseToProtobuf.go:71.2,71.18 1 1
e2mgr/handlers/endc_x2setupResponseToProtobuf.go:318.202,320.16 2 1
e2mgr/handlers/endc_x2setupResponseToProtobuf.go:324.2,325.43 2 1
e2mgr/handlers/endc_x2setupResponseToProtobuf.go:320.16,322.3 1 0
-e2mgr/providers/incoming_request_handler_provider.go:24.79,30.2 1 0
-e2mgr/providers/incoming_request_handler_provider.go:33.91,38.2 1 0
-e2mgr/providers/incoming_request_handler_provider.go:40.121,43.9 2 0
-e2mgr/providers/incoming_request_handler_provider.go:48.2,48.21 1 0
-e2mgr/providers/incoming_request_handler_provider.go:43.9,46.3 2 0
-e2mgr/providers/notification_handler_provider.go:34.160,40.2 1 1
-e2mgr/providers/notification_handler_provider.go:42.164,54.2 1 1
-e2mgr/providers/notification_handler_provider.go:56.123,59.9 2 1
-e2mgr/providers/notification_handler_provider.go:63.2,63.21 1 1
-e2mgr/providers/notification_handler_provider.go:59.9,61.3 1 1
-e2mgr/providers/request_handler_provider.go:32.105,35.2 2 1
-e2mgr/providers/request_handler_provider.go:37.98,42.2 1 1
-e2mgr/providers/request_handler_provider.go:44.120,47.9 2 1
-e2mgr/providers/request_handler_provider.go:53.2,53.21 1 1
-e2mgr/providers/request_handler_provider.go:47.9,51.3 3 1
-e2mgr/rnibBuilders/node_info_builder.go:25.111,34.2 7 1
-e2mgr/services/rnib_reader_service.go:30.83,32.2 1 0
-e2mgr/services/rnib_reader_service.go:36.94,38.2 1 0
-e2mgr/services/rnib_reader_service.go:40.90,43.18 2 0
-e2mgr/services/rnib_reader_service.go:47.2,49.18 2 0
-e2mgr/services/rnib_reader_service.go:53.2,55.26 2 0
-e2mgr/services/rnib_reader_service.go:43.18,45.3 1 0
-e2mgr/services/rnib_reader_service.go:49.18,51.3 1 0
-e2mgr/services/rmr_service.go:38.90,40.2 1 1
-e2mgr/services/rmr_service.go:53.61,62.2 1 1
-e2mgr/services/rmr_service.go:65.21,80.2 9 1
-e2mgr/services/rmr_service.go:82.76,93.16 6 0
-e2mgr/services/rmr_service.go:93.16,96.3 2 0
-e2mgr/services/rmr_service.go:100.40,102.6 1 1
-e2mgr/services/rmr_service.go:102.6,107.17 3 1
-e2mgr/services/rmr_service.go:111.3,111.79 1 0
-e2mgr/services/rmr_service.go:107.17,108.12 1 1
-e2mgr/services/rmr_service.go:115.36,116.5 1 0
-e2mgr/services/rmr_service.go:116.5,119.10 2 0
-e2mgr/services/rmr_service.go:125.3,126.29 2 0
-e2mgr/services/rmr_service.go:119.10,122.9 2 0
-e2mgr/services/rmr_service.go:130.37,131.35 1 1
-e2mgr/services/rmr_service.go:131.35,135.3 3 1
-e2mgr/rmrCgo/rmrCgoApi.go:34.99,41.21 6 1
-e2mgr/rmrCgo/rmrCgoApi.go:48.2,50.11 3 1
-e2mgr/rmrCgo/rmrCgoApi.go:41.21,43.39 2 1
-e2mgr/rmrCgo/rmrCgoApi.go:43.39,46.4 2 0
-e2mgr/rmrCgo/rmrCgoApi.go:53.71,59.21 6 0
-e2mgr/rmrCgo/rmrCgoApi.go:66.2,74.21 7 0
-e2mgr/rmrCgo/rmrCgoApi.go:80.2,81.50 2 0
-e2mgr/rmrCgo/rmrCgoApi.go:59.21,63.3 3 0
-e2mgr/rmrCgo/rmrCgoApi.go:74.21,78.3 3 0
-e2mgr/rmrCgo/rmrCgoApi.go:84.46,93.21 7 0
-e2mgr/rmrCgo/rmrCgoApi.go:99.2,103.18 5 0
-e2mgr/rmrCgo/rmrCgoApi.go:93.21,97.3 3 0
-e2mgr/rmrCgo/rmrCgoApi.go:106.39,112.2 5 0
-e2mgr/rmrCgo/rmrCgoApi.go:114.36,117.2 2 1
-e2mgr/rmrCgo/rmrCgoApi.go:119.29,123.2 3 0
-e2mgr/rmrCgo/rmrCgoTypes.go:31.87,39.2 1 1
-e2mgr/rmrCgo/rmrCgoTypes.go:41.96,48.2 1 1
-e2mgr/rmrCgo/rmrCgoTypes.go:119.32,121.2 1 0
-e2mgr/rmrCgo/rmrCgoUtils.go:32.66,48.93 7 0
-e2mgr/rmrCgo/rmrCgoUtils.go:52.2,52.13 1 0
-e2mgr/rmrCgo/rmrCgoUtils.go:48.93,50.3 1 0
-e2mgr/rmrCgo/rmrCgoUtils.go:55.115,68.50 9 0
-e2mgr/rmrCgo/rmrCgoUtils.go:73.2,74.51 2 0
-e2mgr/rmrCgo/rmrCgoUtils.go:78.2,82.16 4 0
-e2mgr/rmrCgo/rmrCgoUtils.go:86.2,87.16 2 0
-e2mgr/rmrCgo/rmrCgoUtils.go:91.2,92.34 2 0
-e2mgr/rmrCgo/rmrCgoUtils.go:96.2,96.14 1 0
-e2mgr/rmrCgo/rmrCgoUtils.go:68.50,70.3 1 0
-e2mgr/rmrCgo/rmrCgoUtils.go:74.51,76.3 1 0
-e2mgr/rmrCgo/rmrCgoUtils.go:82.16,85.3 1 0
-e2mgr/rmrCgo/rmrCgoUtils.go:87.16,90.3 1 0
-e2mgr/rmrCgo/rmrCgoUtils.go:92.34,95.3 1 0
-e2mgr/rmrCgo/rmrCgoUtils.go:100.47,101.23 1 0
-e2mgr/rmrCgo/rmrCgoUtils.go:101.23,102.24 1 0
-e2mgr/rmrCgo/rmrCgoUtils.go:105.3,105.138 1 0
-e2mgr/rmrCgo/rmrCgoUtils.go:102.24,104.4 1 0
+e2mgr/handlers/ranLostConnectionHandler.go:36.153,41.2 1 1
+e2mgr/handlers/ranLostConnectionHandler.go:43.91,49.86 4 1
+e2mgr/handlers/ranLostConnectionHandler.go:63.2,65.8 3 1
+e2mgr/handlers/ranLostConnectionHandler.go:49.86,51.3 1 1
+e2mgr/handlers/ranLostConnectionHandler.go:51.8,55.83 4 1
+e2mgr/handlers/ranLostConnectionHandler.go:55.83,57.4 1 1
+e2mgr/handlers/ranLostConnectionHandler.go:57.9,61.4 2 1
+e2mgr/handlers/ranLostConnectionHandler.go:65.8,68.3 2 1
+e2mgr/handlers/ranLostConnectionHandler.go:72.70,73.28 1 1
+e2mgr/handlers/ranLostConnectionHandler.go:74.131,75.63 1 1
+e2mgr/handlers/ranLostConnectionHandler.go:76.46,77.153 1 1
+e2mgr/handlers/ranLostConnectionHandler.go:78.10,79.60 1 1
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:31.162,34.16 2 1
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:38.2,41.159 3 1
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:45.2,45.27 1 1
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:50.2,50.17 1 1
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:34.16,36.3 1 0
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:41.159,43.3 1 1
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:45.27,48.3 2 0
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:78.158,81.16 2 1
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:85.2,88.132 3 1
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:92.2,92.27 1 1
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:97.2,97.17 1 1
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:81.16,83.3 1 0
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:88.132,90.3 1 1
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:92.27,95.3 2 1
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:100.175,102.16 2 1
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:106.2,109.27 3 1
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:115.2,115.62 1 1
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:102.16,104.3 1 1
+e2mgr/handlers/x2apPdu_asn1_unpacker.go:109.27,113.3 3 1
+e2mgr/handlers/x2apSetup_response_notification_handler.go:33.91,38.16 3 0
+e2mgr/handlers/x2apSetup_response_notification_handler.go:42.2,44.8 2 0
+e2mgr/handlers/x2apSetup_response_notification_handler.go:38.16,40.3 1 0
+e2mgr/handlers/x2apSetup_response_notification_handler.go:44.8,45.17 1 0
+e2mgr/handlers/x2apSetup_response_notification_handler.go:69.3,70.44 2 0
+e2mgr/handlers/x2apSetup_response_notification_handler.go:45.17,60.87 12 0
+e2mgr/handlers/x2apSetup_response_notification_handler.go:60.87,62.5 1 0
+e2mgr/handlers/x2apSetup_response_notification_handler.go:62.10,64.30 2 0
+e2mgr/handlers/x2apSetup_response_notification_handler.go:64.30,66.6 1 0
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:36.78,37.25 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:51.2,51.12 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:38.31,40.130 2 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:41.28,43.131 2 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:44.27,46.113 2 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:47.23,49.128 2 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:54.114,57.37 2 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:63.2,63.41 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:71.2,71.44 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:79.2,79.171 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:98.2,98.22 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:57.37,61.3 2 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:63.41,64.22 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:67.3,67.93 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:64.22,66.4 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:71.44,72.22 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:75.3,75.93 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:72.22,74.4 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:79.171,80.22 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:83.3,87.91 5 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:95.3,95.67 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:80.22,82.4 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:87.91,94.4 4 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:102.90,105.54 2 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:138.2,138.27 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:105.54,108.120 2 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:108.120,110.74 2 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:110.74,113.64 3 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:113.64,114.34 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:114.34,115.46 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:116.49,119.22 3 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:122.54,123.131 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:124.66,126.66 2 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:119.22,121.9 1 0
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:126.66,128.9 1 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:128.14,130.9 1 0
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:141.192,143.16 2 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:147.2,149.46 2 1
+e2mgr/handlers/x2setupFailureResponseToProtobuf.go:143.16,145.3 1 0
+e2mgr/handlers/delete_all_request_handler.go:41.68,47.2 1 1
+e2mgr/handlers/delete_all_request_handler.go:49.158,52.16 2 1
+e2mgr/handlers/delete_all_request_handler.go:56.2,56.26 1 1
+e2mgr/handlers/delete_all_request_handler.go:61.2,68.16 6 1
+e2mgr/handlers/delete_all_request_handler.go:72.2,72.12 1 1
+e2mgr/handlers/delete_all_request_handler.go:52.16,54.3 1 1
+e2mgr/handlers/delete_all_request_handler.go:56.26,58.3 1 1
+e2mgr/handlers/delete_all_request_handler.go:68.16,70.3 1 0
+e2mgr/handlers/delete_all_request_handler.go:75.116,78.16 2 1
+e2mgr/handlers/delete_all_request_handler.go:83.2,83.30 1 1
+e2mgr/handlers/delete_all_request_handler.go:87.2,87.42 1 1
+e2mgr/handlers/delete_all_request_handler.go:105.2,106.18 2 1
+e2mgr/handlers/delete_all_request_handler.go:78.16,81.3 2 1
+e2mgr/handlers/delete_all_request_handler.go:83.30,85.3 1 1
+e2mgr/handlers/delete_all_request_handler.go:87.42,91.17 2 1
+e2mgr/handlers/delete_all_request_handler.go:97.3,97.20 1 1
+e2mgr/handlers/delete_all_request_handler.go:102.3,102.55 1 1
+e2mgr/handlers/delete_all_request_handler.go:91.17,94.12 2 1
+e2mgr/handlers/delete_all_request_handler.go:97.20,100.12 2 1
+e2mgr/handlers/delete_all_request_handler.go:109.142,112.18 2 1
+e2mgr/handlers/delete_all_request_handler.go:116.2,120.16 3 1
+e2mgr/handlers/delete_all_request_handler.go:126.2,126.27 1 1
+e2mgr/handlers/delete_all_request_handler.go:112.18,114.3 1 1
+e2mgr/handlers/delete_all_request_handler.go:120.16,124.3 2 1
+e2mgr/handlers/delete_all_request_handler.go:126.27,129.3 1 0
+e2mgr/handlers/delete_all_request_handler.go:132.146,134.65 1 1
+e2mgr/handlers/delete_all_request_handler.go:138.2,138.70 1 1
+e2mgr/handlers/delete_all_request_handler.go:143.2,147.16 3 1
+e2mgr/handlers/delete_all_request_handler.go:153.2,153.137 1 1
+e2mgr/handlers/delete_all_request_handler.go:134.65,136.3 1 1
+e2mgr/handlers/delete_all_request_handler.go:138.70,141.3 2 0
+e2mgr/handlers/delete_all_request_handler.go:147.16,151.3 2 1
--- /dev/null
+package handlers
+
+import "C"
+import (
+ "e2mgr/logger"
+ "e2mgr/models"
+ "e2mgr/rNibWriter"
+ "e2mgr/sessions"
+ "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities"
+ "time"
+)
+
+type EnbLoadInformationNotificationHandler struct {
+ rnibWriterProvider func() rNibWriter.RNibWriter
+}
+
+func NewEnbLoadInformationNotificationHandler(rnibWriterProvider func() rNibWriter.RNibWriter) EnbLoadInformationNotificationHandler {
+ return EnbLoadInformationNotificationHandler{
+ rnibWriterProvider: rnibWriterProvider,
+ }
+}
+
+func elapsed(startTime time.Time) float64 {
+ return float64(time.Since(startTime)) / float64(time.Millisecond)
+}
+
+func (src EnbLoadInformationNotificationHandler) Handle(logger *logger.Logger, e2Sessions sessions.E2Sessions, request *models.NotificationRequest, messageChannel chan<- *models.NotificationResponse) {
+
+ pdu, err := unpackX2apPdu(logger, MaxAsn1CodecAllocationBufferSize, request.Len, request.Payload, MaxAsn1CodecMessageBufferSize)
+
+ if err != nil {
+ logger.Errorf("#EnbLoadInformationNotificationHandler.Handle - RAN name: %s - Unpack failed. Error: %v", request.RanName, err)
+ return
+ }
+
+ logger.Debugf("#EnbLoadInformationNotificationHandler.Handle - RAN name: %s - Unpacked message successfully", request.RanName)
+
+ ranLoadInformation := &entities.RanLoadInformation{LoadTimestamp: uint64(request.StartTime.UnixNano())}
+
+ err = extractAndBuildRanLoadInformation(pdu, ranLoadInformation)
+
+ if (err != nil) {
+ logger.Errorf("#EnbLoadInformationNotificationHandler.Handle - RAN name: %s - Failed at extractAndBuildRanLoadInformation. Error: %v", request.RanName, err)
+ return
+ }
+
+ logger.Debugf("#EnbLoadInformationNotificationHandler.Handle - RAN name: %s - Successfully done with extracting and building RAN load information. elapsed: %f ms", request.RanName, elapsed(request.StartTime))
+
+ rnibErr := src.rnibWriterProvider().SaveRanLoadInformation(request.RanName, ranLoadInformation)
+
+ if rnibErr != nil {
+ logger.Errorf("#EnbLoadInformationNotificationHandler.Handle - RAN name: %s - Failed saving RAN load information. Error: %v", request.RanName, rnibErr)
+ return
+ }
+
+ logger.Infof("#EnbLoadInformationNotificationHandler.Handle - RAN name: %s - Successfully saved RAN load information to RNIB. elapsed: %f ms", request.RanName, elapsed(request.StartTime))
+}
--- /dev/null
+//
+// Copyright 2019 AT&T Intellectual Property
+// Copyright 2019 Nokia
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+package handlers
+
+import (
+ "e2mgr/logger"
+ "e2mgr/models"
+ "e2mgr/sessions"
+ "fmt"
+ "time"
+)
+
+const (
+ FullUperPdu string = "004c07080004001980da0100075bde017c148003d5a8205000017c180003d5a875555403331420000012883a0003547400cd20002801ea16007c1f07c1f107c1f0781e007c80800031a02c000c88199040a00352083669190000d8908020000be0c4001ead4016e007ab50100002f8320067ab5005b8c1ead5070190c00001d637805f220000f56a081400005f020000f56a1d555400ccc508002801ea16007c1f07c1f107c1f0781e007c80800031a02c000c88199040a00352083669190000d8908020000be044001ead4016e007ab50100002f8120067ab5005b8c1ead5070190c00000"
+ FullAperPdu string = "" // TODO: populate and use it
+ BasicUperPdu string = "004898000400190d0000074200017c148003d5a80000"
+ BasicAperPdu string = "" // TODO: populate and use it
+ GarbagePdu string = "12312312"
+)
+
+func createNotificationRequest(ranName string, transactionId string, packedPdu string) (*models.NotificationRequest, error) {
+ var packedByteSlice []byte
+
+ _, err := fmt.Sscanf(packedPdu, "%x", &packedByteSlice)
+
+ if err != nil {
+ return nil, err
+ }
+
+ return models.NewNotificationRequest(ranName, packedByteSlice, time.Now(), transactionId), nil
+}
+
+func createNotificationRequestAndHandle(log *logger.Logger, ranName string, transactionId string, loadInformationHandler EnbLoadInformationNotificationHandler, pdu string) error {
+ notificationRequest, err := createNotificationRequest(ranName, transactionId, pdu)
+
+ if err != nil {
+ return err
+ }
+
+ loadInformationHandler.Handle(log, sessions.E2Sessions{}, notificationRequest, nil)
+ return nil
+}
+
+//func TestLoadInformationHandlerSuccess(t *testing.T) {
+// log, err := logger.InitLogger(logger.InfoLevel)
+// if err != nil {
+// t.Errorf("#setup_request_handler_test.TestLoadInformationHandlerSuccess - failed to initialize logger, error: %v", err)
+// }
+//
+// inventoryName := "testRan"
+//
+// writerMock := &mocks.RnibWriterMock{}
+// rnibWriterProvider := func() rNibWriter.RNibWriter {
+// return writerMock
+// }
+//
+// var rnibErr common.IRNibError
+// writerMock.On("SaveRanLoadInformation",inventoryName, mock.Anything).Return(rnibErr)
+//
+// loadInformationHandler := NewEnbLoadInformationNotificationHandler(rnibWriterProvider)
+//
+// var packedExampleByteSlice []byte
+// _, err = fmt.Sscanf(FullUperPdu, "%x", &packedExampleByteSlice)
+// notificationRequest := models.NewNotificationRequest(inventoryName, packedExampleByteSlice, time.Now(), " 881828026419")
+// loadInformationHandler.Handle(log, sessions.E2Sessions{}, notificationRequest, nil)
+//
+// writerMock.AssertNumberOfCalls(t, "SaveRanLoadInformation", 1)
+//}
+//
+//func TestLoadInformationHandlerPayloadFailure(t *testing.T) {
+// log, err := logger.InitLogger(logger.InfoLevel)
+// if err != nil {
+// t.Errorf("#setup_request_handler_test.TestLoadInformationHandlerPayloadFailure - failed to initialize logger, error: %v", err)
+// }
+//
+// inventoryName := "testRan"
+//
+// writerMock := &mocks.RnibWriterMock{}
+// rnibWriterProvider := func() rNibWriter.RNibWriter {
+// return writerMock
+// }
+//
+// var rnibErr common.IRNibError
+// writerMock.On("SaveRanLoadInformation",inventoryName, mock.Anything).Return(rnibErr)
+//
+// loadInformationHandler := NewEnbLoadInformationNotificationHandler(rnibWriterProvider)
+//
+// var packedExampleByteSlice []byte
+// _, err = fmt.Sscanf(GarbagePdu, "%x", &packedExampleByteSlice)
+// notificationRequest := models.NewNotificationRequest(inventoryName, packedExampleByteSlice, time.Now(), " 881828026419")
+// loadInformationHandler.Handle(log, sessions.E2Sessions{}, notificationRequest, nil)
+//
+// writerMock.AssertNumberOfCalls(t, "SaveRanLoadInformation", 0)
+//}
+
+// Integration test
+//func TestLoadInformationHandlerOverrideSuccess(t *testing.T) {
+// log, err := logger.InitLogger(logger.InfoLevel)
+// if err != nil {
+// t.Errorf("#setup_request_handler_test.TestLoadInformationHandlerOverrideSuccess - failed to initialize logger, error: %s", err)
+// }
+//
+// rNibWriter.Init("e2Manager", 1)
+// defer rNibWriter.Close()
+// reader.Init("e2Manager", 1)
+// defer reader.Close()
+// loadInformationHandler := NewEnbLoadInformationNotificationHandler(rNibWriter.GetRNibWriter)
+//
+// err = createNotificationRequestAndHandle(log, "ranName", " 881828026419", loadInformationHandler, FullUperPdu)
+//
+// if err != nil {
+// t.Errorf("#setup_request_handler_test.TestLoadInformationHandlerOverrideSuccess - failed creating NotificationRequest, error: %v", err)
+// }
+//
+// err = createNotificationRequestAndHandle(log, "ranName", " 881828026419", loadInformationHandler, BasicUperPdu)
+//
+// if err != nil {
+// t.Errorf("#setup_request_handler_test.TestLoadInformationHandlerOverrideSuccess - failed creating NotificationRequest, error: %v", err)
+// }
+//
+// ranLoadInformation, rnibErr := reader.GetRNibReader().GetRanLoadInformation("ranName")
+//
+// if (rnibErr != nil) {
+// t.Errorf("#setup_request_handler_test.TestLoadInformationHandlerOverrideSuccess - RNIB error: %v", err)
+// }
+//
+// assert.Len(t, ranLoadInformation.CellLoadInfos, 1)
+//}
)
const (
- MaxCellineNb = 256
+ MaxCellsInEnb = 256
MaxNoOfPrbs = 110
NaxNoOfCompHypothesisSet = 256
NaxNoOfCompCells = 32
loadInformationCellListCount := loadInformationCellList.list.count
- if loadInformationCellListCount == 0 || loadInformationCellListCount > MaxCellineNb {
+ if loadInformationCellListCount == 0 || loadInformationCellListCount > MaxCellsInEnb {
return nil, fmt.Errorf("#extractPduCellInformationItemIEs - Invalid CellInformation list count")
}
pduUlHighInterferenceIndicationInfoListCount := pduUlHighInterferenceIndicationInfo.list.count
- if pduUlHighInterferenceIndicationInfoListCount == 0 || pduUlHighInterferenceIndicationInfoListCount > MaxCellineNb {
+ if pduUlHighInterferenceIndicationInfoListCount == 0 || pduUlHighInterferenceIndicationInfoListCount > MaxCellsInEnb {
return nil, fmt.Errorf("#extractPduUlHighInterferenceIndicationInfoItems - cellId: %s - Invalid UL High Interference Indication info list count", cellId)
}
--- /dev/null
+/*******************************************************************************
+ *
+ * Copyright (c) 2019 AT&T Intellectual Property.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ *******************************************************************************/
+package handlers
+
+import (
+ "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities"
+)
+
+/*
+Test permutations of eNB Load Information to protobuf
+*/
+
+type LoadInformationTestCaseName string
+
+const LoadTimestamp = 1257894000000000000
+
+const (
+ SingleCellWithCellIdOnly LoadInformationTestCaseName = "SINGLE CELL WITH CELL ID ONLY" //base
+ SingleCellPartiallyPopulated LoadInformationTestCaseName = "SINGLE CELL PARTIALLY POPULATED" //8
+ TwoCellsFullInfo LoadInformationTestCaseName = "TWO CELLS FULLY POPULATED" //13
+)
+
+type LoadInformationTestCase struct {
+ loadInformationTestCaseName LoadInformationTestCaseName
+ packedUperPdu string
+ packedAperPdu string
+ expectedLoadInformation *entities.RanLoadInformation
+}
+
+var testCases = []LoadInformationTestCase{
+ {
+ loadInformationTestCaseName: SingleCellWithCellIdOnly,
+ packedAperPdu: "000240140000010006400d00000740080002f8290007ab50",
+ packedUperPdu: "004898000400190d0000074200017c148003d5a80000",
+ expectedLoadInformation: GenerateSingleCellWithCellIdOnlyRanLoadInformation(),
+ },
+ {
+ loadInformationTestCaseName: SingleCellPartiallyPopulated,
+ packedAperPdu: "", //TODO: populate and USE
+ packedUperPdu: "004b380004001961000007571e017c148003d5a8205000017c180003d5a875555003331420008007a85801f07c1f07c41f07c1e07801f2020000c680b0003220664102800d8908020000be0c4001ead4016e007ab50100002f8320067ab5005b8c1ead5070190c000000",
+ expectedLoadInformation: GenerateSingleCellPartiallyPopulatedLoadInformation(),
+ },
+ {
+ loadInformationTestCaseName: TwoCellsFullInfo,
+ packedAperPdu: "", //TODO: populate and USE
+ packedUperPdu: "004c07080004001980da0100075bde017c148003d5a8205000017c180003d5a875555403331420000012883a0003547400cd20002801ea16007c1f07c1f107c1f0781e007c80800031a02c000c88199040a00352083669190000d8908020000be0c4001ead4016e007ab50100002f8320067ab5005b8c1ead5070190c00001d637805f220000f56a081400005f020000f56a1d555400ccc508002801ea16007c1f07c1f107c1f0781e007c80800031a02c000c88199040a00352083669190000d8908020000be044001ead4016e007ab50100002f8120067ab5005b8c1ead5070190c00000",
+ expectedLoadInformation: GenerateTwoCellsFullyPopulatedRanLoadInformation(),
+ },
+}
+
+//func TestExtractAndBuildRanLoadInformation(t *testing.T) {
+// logger, _ := logger.InitLogger(logger.InfoLevel)
+//
+// for _, tc := range testCases {
+// t.Run(string(tc.loadInformationTestCaseName), func(t *testing.T) {
+//
+// var payload []byte
+// _, err := fmt.Sscanf(tc.packedUperPdu, "%x", &payload)
+//
+// if err != nil {
+// t.Errorf("convert inputPayloadAsStr to payloadAsByte. Error: %v\n", err)
+// }
+//
+// pdu, err := unpackX2apPduUPer(logger, MaxAsn1CodecAllocationBufferSize, len(payload), payload, MaxAsn1CodecMessageBufferSize)
+//
+// actualRanLoadInformation := &entities.RanLoadInformation{LoadTimestamp: LoadTimestamp}
+//
+// err = extractAndBuildRanLoadInformation(pdu, actualRanLoadInformation)
+//
+// if err != nil {
+// t.Errorf("want: success, got: error: %v\n", err)
+// }
+//
+// if !assert.Equal(t, tc.expectedLoadInformation, actualRanLoadInformation) {
+// t.Errorf("want: %v, got: %v", tc.expectedLoadInformation, actualRanLoadInformation)
+// }
+// })
+// }
+//}
+
+func GenerateSingleCellWithCellIdOnlyRanLoadInformation() *entities.RanLoadInformation {
+ return &entities.RanLoadInformation{
+ LoadTimestamp: LoadTimestamp,
+ CellLoadInfos: []*entities.CellLoadInformation{
+ {CellId: "02f829:0007ab50"},
+ },
+ }
+}
+
+func GenerateSingleCellPartiallyPopulatedLoadInformation() *entities.RanLoadInformation {
+
+ ulInterferenceOverloadIndications := []entities.UlInterferenceOverloadIndication{
+ entities.UlInterferenceOverloadIndication_HIGH_INTERFERENCE,
+ entities.UlInterferenceOverloadIndication_MEDIUM_INTERFERENCE,
+ entities.UlInterferenceOverloadIndication_LOW_INTERFERENCE,
+ }
+
+ rntp := entities.RelativeNarrowbandTxPower{
+ RntpPerPrb: "cc",
+ RntpThreshold: entities.RntpThreshold_NEG_6,
+ NumberOfCellSpecificAntennaPorts: entities.NumberOfCellSpecificAntennaPorts_V2_ANT_PRT,
+ PB: 2,
+ PdcchInterferenceImpact: 1,
+ }
+
+ absInformation := entities.AbsInformation{
+ Mode: entities.AbsInformationMode_ABS_INFO_FDD,
+ AbsPatternInfo: "07c1f07c1f",
+ NumberOfCellSpecificAntennaPorts: entities.NumberOfCellSpecificAntennaPorts_V1_ANT_PRT,
+ MeasurementSubset: "83e0f83c0f",
+ }
+
+ extendedUlInterferenceOverloadInfo := entities.ExtendedUlInterferenceOverloadInfo{
+ AssociatedSubframes: "c8",
+ ExtendedUlInterferenceOverloadIndications: ulInterferenceOverloadIndications,
+ }
+
+ compInformationStartTime := entities.StartTime{
+ StartSfn: 50,
+ StartSubframeNumber: 3,
+ }
+
+ return &entities.RanLoadInformation{
+ LoadTimestamp: LoadTimestamp,
+ CellLoadInfos: []*entities.CellLoadInformation{
+ {
+ CellId: "02f829:0007ab50",
+ UlInterferenceOverloadIndications: ulInterferenceOverloadIndications,
+ UlHighInterferenceInfos: []*entities.UlHighInterferenceInformation{{TargetCellId: "02f830:0007ab50", UlHighInterferenceIndication: "aaaa"}},
+ RelativeNarrowbandTxPower: &rntp,
+ AbsInformation: &absInformation,
+ InvokeIndication: entities.InvokeIndication_ABS_INFORMATION,
+ IntendedUlDlConfiguration: entities.SubframeAssignment_SA6,
+ ExtendedUlInterferenceOverloadInfo: &extendedUlInterferenceOverloadInfo,
+ CompInformation: &entities.CompInformation{
+ CompInformationItems: []*entities.CompInformationItem{
+ {
+ CompHypothesisSets: []*entities.CompHypothesisSet{{CellId: "02f831:0007ab50", CompHypothesis: "e007ab50"}},
+ BenefitMetric: -99,
+ },
+ {
+ CompHypothesisSets: []*entities.CompHypothesisSet{{CellId: "02f832:0067ab50", CompHypothesis: "e307ab50"}},
+ BenefitMetric: 30,
+ },
+ },
+ CompInformationStartTime: &compInformationStartTime,
+ },
+ },
+ },
+ }
+
+}
+
+func GenerateTwoCellsFullyPopulatedRanLoadInformation() *entities.RanLoadInformation {
+
+ ulInterferenceOverloadIndications := []entities.UlInterferenceOverloadIndication{
+ entities.UlInterferenceOverloadIndication_HIGH_INTERFERENCE,
+ entities.UlInterferenceOverloadIndication_MEDIUM_INTERFERENCE,
+ entities.UlInterferenceOverloadIndication_LOW_INTERFERENCE,
+ }
+
+ rntp := entities.RelativeNarrowbandTxPower{
+ RntpPerPrb: "cc",
+ RntpThreshold: entities.RntpThreshold_NEG_6,
+ NumberOfCellSpecificAntennaPorts: entities.NumberOfCellSpecificAntennaPorts_V2_ANT_PRT,
+ PB: 2,
+ PdcchInterferenceImpact: 1,
+ }
+
+ enhancedRntp := entities.EnhancedRntp{
+ EnhancedRntpBitmap: "aa38",
+ RntpHighPowerThreshold: entities.RntpThreshold_NEG_4,
+ EnhancedRntpStartTime: &entities.StartTime{StartSfn: 51, StartSubframeNumber: 9},
+ }
+
+ rntpWithEnhanced := rntp
+ rntpWithEnhanced.EnhancedRntp = &enhancedRntp
+
+ absInformation := entities.AbsInformation{
+ Mode: entities.AbsInformationMode_ABS_INFO_FDD,
+ AbsPatternInfo: "07c1f07c1f",
+ NumberOfCellSpecificAntennaPorts: entities.NumberOfCellSpecificAntennaPorts_V1_ANT_PRT,
+ MeasurementSubset: "83e0f83c0f",
+ }
+
+ extendedUlInterferenceOverloadInfo := entities.ExtendedUlInterferenceOverloadInfo{
+ AssociatedSubframes: "c8",
+ ExtendedUlInterferenceOverloadIndications: ulInterferenceOverloadIndications,
+ }
+
+ compInformationStartTime := entities.StartTime{
+ StartSfn: 50,
+ StartSubframeNumber: 3,
+ }
+
+ dynamicDlTransmissionInformation := entities.DynamicDlTransmissionInformation{
+ State: entities.NaicsState_NAICS_ACTIVE,
+ TransmissionModes: "cd",
+ PB: 0,
+ PAList: []entities.PA{entities.PA_DB_NEG_1_DOT_77, entities.PA_DB_NEG_3},
+ }
+
+ return &entities.RanLoadInformation{
+ LoadTimestamp: LoadTimestamp,
+ CellLoadInfos: []*entities.CellLoadInformation{
+ {
+ CellId: "02f829:0007ab50",
+ UlInterferenceOverloadIndications: ulInterferenceOverloadIndications,
+ UlHighInterferenceInfos: []*entities.UlHighInterferenceInformation{{TargetCellId: "02f830:0007ab50", UlHighInterferenceIndication: "aaaa"}},
+ RelativeNarrowbandTxPower: &rntpWithEnhanced,
+ AbsInformation: &absInformation,
+ InvokeIndication: entities.InvokeIndication_ABS_INFORMATION,
+ IntendedUlDlConfiguration: entities.SubframeAssignment_SA6,
+ ExtendedUlInterferenceOverloadInfo: &extendedUlInterferenceOverloadInfo,
+ CompInformation: &entities.CompInformation{
+ CompInformationItems: []*entities.CompInformationItem{
+ {
+ CompHypothesisSets: []*entities.CompHypothesisSet{{CellId: "02f831:0007ab50", CompHypothesis: "e007ab50"}},
+ BenefitMetric: -99,
+ },
+ {
+ CompHypothesisSets: []*entities.CompHypothesisSet{{CellId: "02f832:0067ab50", CompHypothesis: "e307ab50"}},
+ BenefitMetric: 30,
+ },
+ },
+ CompInformationStartTime: &compInformationStartTime,
+ },
+ DynamicDlTransmissionInformation: &dynamicDlTransmissionInformation,
+ },
+ {
+ CellId: "02f910:0007ab50",
+ UlInterferenceOverloadIndications: ulInterferenceOverloadIndications,
+ UlHighInterferenceInfos: []*entities.UlHighInterferenceInformation{{TargetCellId: "02f810:0007ab50", UlHighInterferenceIndication: "aaaa"}},
+ RelativeNarrowbandTxPower: &rntp,
+ AbsInformation: &absInformation,
+ InvokeIndication: entities.InvokeIndication_ABS_INFORMATION,
+ IntendedUlDlConfiguration: entities.SubframeAssignment_SA6,
+ ExtendedUlInterferenceOverloadInfo: &extendedUlInterferenceOverloadInfo,
+ CompInformation: &entities.CompInformation{
+ CompInformationItems: []*entities.CompInformationItem{
+ {
+ CompHypothesisSets: []*entities.CompHypothesisSet{{CellId: "02f811:0007ab50", CompHypothesis: "e007ab50"}},
+ BenefitMetric: -99,
+ },
+ {
+ CompHypothesisSets: []*entities.CompHypothesisSet{{CellId: "02f812:0067ab50", CompHypothesis: "e307ab50"}},
+ BenefitMetric: 30,
+ },
+ },
+ CompInformationStartTime: &compInformationStartTime,
+ },
+ DynamicDlTransmissionInformation: &dynamicDlTransmissionInformation,
+ },
+ },
+ }
+}
+++ /dev/null
-package handlers
-
-import "C"
-import (
- "e2mgr/logger"
- "e2mgr/models"
- "e2mgr/rNibWriter"
- "e2mgr/sessions"
- "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities"
- "time"
-)
-
-type RicEnbLoadInformationNotificationHandler struct{}
-
-func elapsed(startTime time.Time) float64 {
- return float64(time.Since(startTime)) / float64(time.Millisecond)
-}
-
-func (src RicEnbLoadInformationNotificationHandler) Handle(logger *logger.Logger, e2Sessions sessions.E2Sessions, request *models.NotificationRequest, messageChannel chan<- *models.NotificationResponse) {
-
- pdu, err := unpackX2apPdu(logger, MaxAsn1CodecAllocationBufferSize, request.Len, request.Payload, MaxAsn1CodecMessageBufferSize)
-
- //packedExampleString := "004c07080004001980da0100075bde017c148003d5a8205000017c180003d5a875555403331420000012883a0003547400cd20002801ea16007c1f07c1f107c1f0781e007c80800031a02c000c88199040a00352083669190000d8908020000be0c4001ead4016e007ab50100002f8320067ab5005b8c1ead5070190c00001d637805f220000f56a081400005f020000f56a1d555400ccc508002801ea16007c1f07c1f107c1f0781e007c80800031a02c000c88199040a00352083669190000d8908020000be044001ead4016e007ab50100002f8120067ab5005b8c1ead5070190c00000"
- //
- //var packedExampleByteSlice []byte
- //
- //_, err := fmt.Sscanf(packedExampleString, "%x", &packedExampleByteSlice)
- //
- //pdu, err := unpackX2apPduUPer(logger, MaxAsn1CodecAllocationBufferSize, len(packedExampleByteSlice), packedExampleByteSlice, MaxAsn1CodecMessageBufferSize)
-
-
- if err != nil {
- logger.Errorf("#RicEnbLoadInformationNotificationHandler.Handle - RAN name: %s - Unpack failed. Error: %v", request.RanName, err)
- return
- }
-
- logger.Debugf("#RicEnbLoadInformationNotificationHandler.Handle - RAN name: %s - Unpacked message successfully", request.RanName)
-
- ranLoadInformation := &entities.RanLoadInformation{LoadTimestamp: uint64(request.StartTime.UnixNano())}
-
- err = extractAndBuildRanLoadInformation(pdu, ranLoadInformation)
-
- if (err != nil) {
- logger.Errorf("#RicEnbLoadInformationNotificationHandler.Handle - RAN name: %s - Failed at extractAndBuildRanLoadInformation. Error: %v", request.RanName, err)
- return
- }
-
- logger.Debugf("#RicEnbLoadInformationNotificationHandler.Handle - RAN name: %s - Successfully done with extracting and building RAN load information. elapsed: %f ms", request.RanName, elapsed(request.StartTime))
-
- rnibErr := rNibWriter.GetRNibWriter().SaveRanLoadInformation(request.RanName, ranLoadInformation) // TODO: Should inject RnibWriter
-
- if rnibErr != nil {
- logger.Errorf("#RicEnbLoadInformationNotificationHandler.Handle - RAN name: %s - Failed saving RAN load information. Error: %v", request.RanName, rnibErr)
- return
- }
-
- logger.Debugf("#RicEnbLoadInformationNotificationHandler.Handle - RAN name: %s - Successfully saved RAN load information to RNIB. elapsed: %f ms", request.RanName, elapsed(request.StartTime))
-}
"github.com/pkg/errors"
"unsafe"
)
-func unpackX2apPduUPer(logger *logger.Logger, allocationBufferSize int, packedBufferSize int, packedBuf []byte, maxMessageBufferSize int) (*C.E2AP_PDU_t, error) {
- pdu := C.new_pdu(C.ulong(allocationBufferSize))
-
- if pdu == nil {
- return nil, errors.New("allocation failure (pdu)")
- }
-
- logger.Debugf("#x2apPdu_asn1_unpacker.unpackX2apPduUPer - Packed pdu(%d):%x", packedBufferSize, packedBuf)
-
- errBuf := make([]C.char, maxMessageBufferSize)
- if !C.unpack_pdu_aux(pdu, C.ulong(packedBufferSize), (*C.uchar)(unsafe.Pointer(&packedBuf[0])), C.ulong(len(errBuf)), &errBuf[0], C.ATS_UNALIGNED_BASIC_PER) {
- return nil, errors.New(fmt.Sprintf("unpacking error: %s", C.GoString(&errBuf[0])))
- }
-
- if logger.DebugEnabled() {
- C.asn1_pdu_printer(pdu, C.size_t(len(errBuf)), &errBuf[0])
- logger.Debugf("#x2apPdu_asn1_unpacker.unpackX2apPduUPer - PDU: %v packed size:%d", C.GoString(&errBuf[0]), packedBufferSize)
- }
- return pdu, nil
-}
type X2PduRefinedResponse struct {
pduPrint string
}
"time"
)
-type NotificationManager struct{
+type NotificationManager struct {
rnibReaderProvider func() reader.RNibReader
rnibWriterProvider func() rNibWriter.RNibWriter
}
rnibWriterProvider: rnibWriterProvider,
}
}
+
//TODO add NEWHandler with log
-func (m NotificationManager) HandleMessage(logger *logger.Logger, e2Sessions sessions.E2Sessions, mbuf *rmrCgo.MBuf, responseChannel chan<- *models.NotificationResponse){
+func (m NotificationManager) HandleMessage(logger *logger.Logger, e2Sessions sessions.E2Sessions, mbuf *rmrCgo.MBuf, responseChannel chan<- *models.NotificationResponse) {
provider := providers.NewNotificationHandlerProvider(m.rnibReaderProvider, m.rnibWriterProvider)
notificationHandler, err := provider.GetNotificationHandler(mbuf.MType)
return
}
- notificationRequest := models.NotificationRequest{RanName: mbuf.Meid, Len: mbuf.Len, Payload: *mbuf.Payload,
- StartTime: time.Now(), TransactionId: string(*mbuf.XAction)}
-
- go notificationHandler.Handle(logger, e2Sessions, ¬ificationRequest, responseChannel)
-}
\ No newline at end of file
+ notificationRequest := models.NewNotificationRequest(mbuf.Meid, *mbuf.Payload, time.Now(), string(*mbuf.XAction))
+ go notificationHandler.Handle(logger, e2Sessions, notificationRequest, responseChannel)
+}
package mocks
import (
- "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities"
"gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/common"
+ "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities"
"github.com/stretchr/testify/mock"
)
func (m *RnibReaderMock) GetNodeb(inventoryName string) (*entities.NodebInfo, common.IRNibError) {
args := m.Called(inventoryName)
-
errArg := args.Get(1);
if errArg != nil {
return args.Get(0).(*entities.NodebInfo), nil
}
-func (m *RnibReaderMock) GetCellList(inventoryName string) (*entities.Cells, common.IRNibError) {
+func (m *RnibReaderMock) GetCellList(inventoryName string) (*entities.Cells, common.IRNibError) {
args := m.Called(inventoryName)
errArg := args.Get(1);
return args.Get(0).(*entities.Cells), nil
}
-func (m *RnibReaderMock) GetListGnbIds()(*[]*entities.NbIdentity, common.IRNibError) {
+func (m *RnibReaderMock) GetListGnbIds() (*[]*entities.NbIdentity, common.IRNibError) {
args := m.Called()
errArg := args.Get(1);
return args.Get(0).(*[]*entities.NbIdentity), nil
}
-func (m *RnibReaderMock) GetListEnbIds()(*[]*entities.NbIdentity, common.IRNibError) {
+func (m *RnibReaderMock) GetListEnbIds() (*[]*entities.NbIdentity, common.IRNibError) {
args := m.Called()
errArg := args.Get(1);
}
-func (m *RnibReaderMock) GetCountGnbList()(int, common.IRNibError) {
+func (m *RnibReaderMock) GetCountGnbList() (int, common.IRNibError) {
args := m.Called()
errArg := args.Get(1);
return args.Get(0).(*entities.Cell), nil
}
-func (m *RnibReaderMock) GetListNodebIds()([]*entities.NbIdentity, common.IRNibError){
+func (m *RnibReaderMock) GetListNodebIds() ([]*entities.NbIdentity, common.IRNibError) {
args := m.Called()
errArg := args.Get(1)
return args.Get(0).([]*entities.NbIdentity), nil
}
-func (m *RnibReaderMock) GetRanLoadInformation(inventoryName string) (*entities.RanLoadInformation, common.IRNibError){
+func (m *RnibReaderMock) GetRanLoadInformation(inventoryName string) (*entities.RanLoadInformation, common.IRNibError) {
args := m.Called()
errArg := args.Get(1)
}
return args.Get(0).(*entities.RanLoadInformation), nil
-}
\ No newline at end of file
+}
type NotificationRequest struct {
RanName string
- Len int
+ Len int
Payload []byte
- StartTime time.Time
+ StartTime time.Time
TransactionId string
}
+
+func NewNotificationRequest(ranName string, payload []byte, startTime time.Time, transactionId string) *NotificationRequest {
+ return &NotificationRequest{
+ ranName,
+ len(payload),
+ payload,
+ startTime,
+ transactionId,
+ }
+}
rmrCgo.RIC_ENDC_X2_SETUP_RESP: handlers.EndcX2SetupResponseNotificationHandler{},
rmrCgo.RIC_ENDC_X2_SETUP_FAILURE: handlers.EndcX2SetupFailureResponseNotificationHandler{},
rmrCgo.RIC_SCTP_CONNECTION_FAILURE: handlers.NewRanLostConnectionHandler(rnibReaderProvider, rnibWriterProvider),
- rmrCgo.RIC_ENB_LOAD_INFORMATION: handlers.RicEnbLoadInformationNotificationHandler{},
+ rmrCgo.RIC_ENB_LOAD_INFORMATION: handlers.NewEnbLoadInformationNotificationHandler(rnibWriterProvider),
rmrCgo.RIC_ENB_CONF_UPDATE: handlers.X2EnbConfigurationUpdateHandler{},
rmrCgo.RIC_ENDC_CONF_UPDATE: handlers.EndcConfigurationUpdateHandler{},
rmrCgo.RIC_X2_RESET_RESP: handlers.NewX2ResetResponseHandler(rnibReaderProvider),
*/
func TestGetNotificationHandlerSuccess(t *testing.T) {
- readerMock :=&mocks.RnibReaderMock{}
+ readerMock := &mocks.RnibReaderMock{}
rnibReaderProvider := func() reader.RNibReader {
return readerMock
}
}{
{rmrCgo.RIC_X2_SETUP_RESP /*successful x2 setup response*/, handlers.X2SetupResponseNotificationHandler{}},
{rmrCgo.RIC_X2_SETUP_FAILURE /*unsuccessful x2 setup response*/, handlers.X2SetupFailureResponseNotificationHandler{}},
- {rmrCgo.RIC_ENDC_X2_SETUP_RESP /*successful en-dc x2 setup response*/,handlers.EndcX2SetupResponseNotificationHandler{}},
- {rmrCgo.RIC_ENDC_X2_SETUP_FAILURE /*unsuccessful en-dc x2 setup response*/,handlers.EndcX2SetupFailureResponseNotificationHandler{}},
+ {rmrCgo.RIC_ENDC_X2_SETUP_RESP /*successful en-dc x2 setup response*/, handlers.EndcX2SetupResponseNotificationHandler{}},
+ {rmrCgo.RIC_ENDC_X2_SETUP_FAILURE /*unsuccessful en-dc x2 setup response*/, handlers.EndcX2SetupFailureResponseNotificationHandler{}},
{rmrCgo.RIC_SCTP_CONNECTION_FAILURE /*sctp errors*/, handlers.NewRanLostConnectionHandler(rnibReaderProvider, rnibWriterProvider)},
- {rmrCgo.RIC_ENB_LOAD_INFORMATION, handlers.RicEnbLoadInformationNotificationHandler{}},
+ {rmrCgo.RIC_ENB_LOAD_INFORMATION, handlers.NewEnbLoadInformationNotificationHandler(rnibWriterProvider)},
{rmrCgo.RIC_ENB_CONF_UPDATE, handlers.X2EnbConfigurationUpdateHandler{}},
{rmrCgo.RIC_ENDC_CONF_UPDATE, handlers.EndcConfigurationUpdateHandler{}},
}
//Note struct is empty, so it will match any other empty struct.
// https://golang.org/ref/spec#Comparison_operators: Struct values are comparable if all their fields are comparable. Two struct values are equal if their corresponding non-blank fields are equal.
if /*handler != tc.handler &&*/ strings.Compare(fmt.Sprintf("%T", handler), fmt.Sprintf("%T", tc.handler)) != 0 {
- t.Errorf("want: handler %T for message type %d, got: %T", tc.handler,tc.msgType, handler)
+ t.Errorf("want: handler %T for message type %d, got: %T", tc.handler, tc.msgType, handler)
}
})
}
{9999 /*unknown*/, "notification handler not found"},
}
for _, tc := range testCases {
- readerMock :=&mocks.RnibReaderMock{}
+ readerMock := &mocks.RnibReaderMock{}
rnibReaderProvider := func() reader.RNibReader {
return readerMock
}