[VOL-3837] Checking that OnuId, AllocId and GemPorts are unique per PON
Validate that received flow carry valid GemPortId and AllocIds
Change-Id: I1b8928c7a9e580c9711f61320595a449df7c30f5
diff --git a/internal/common/omci/create.go b/internal/common/omci/create.go
index c1e2b0b..d3c88b3 100644
--- a/internal/common/omci/create.go
+++ b/internal/common/omci/create.go
@@ -42,7 +42,7 @@
return msgObj, nil
}
-func CreateCreateResponse(omciPkt gopacket.Packet, omciMsg *omci.OMCI) ([]byte, error) {
+func CreateCreateResponse(omciPkt gopacket.Packet, omciMsg *omci.OMCI, result me.Results) ([]byte, error) {
msgObj, err := ParseCreateRequest(omciPkt)
@@ -60,7 +60,7 @@
EntityClass: msgObj.EntityClass,
EntityInstance: msgObj.EntityInstance,
},
- Result: me.Success,
+ Result: result,
}
pkt, err := Serialize(omci.CreateResponseType, response, omciMsg.TransactionID)
@@ -78,75 +78,3 @@
return pkt, nil
}
-
-// methods used by BBR to drive the OMCI state machine
-
-func CreateGalEnetRequest(tid uint16) ([]byte, error) {
- params := me.ParamData{
- EntityID: 1,
- Attributes: me.AttributeValueMap{"MaximumGemPayloadSize": 48},
- }
- meDef, _ := me.NewGalEthernetProfile(params)
- pkt, err := omci.GenFrame(meDef, omci.CreateRequestType, omci.TransactionID(tid))
- if err != nil {
- omciLogger.WithField("err", err).Fatalf("Can't generate GalEnetRequest")
- }
- return HexEncode(pkt)
-}
-
-func CreateEnableUniRequest(tid uint16, uniId uint16, enabled bool, isPtp bool) ([]byte, error) {
-
- var _enabled uint8
- if enabled {
- _enabled = uint8(1)
- } else {
- _enabled = uint8(0)
- }
-
- data := me.ParamData{
- EntityID: uniId,
- Attributes: me.AttributeValueMap{
- "AdministrativeState": _enabled,
- },
- }
- var medef *me.ManagedEntity
- var omciErr me.OmciErrors
-
- if isPtp {
- medef, omciErr = me.NewPhysicalPathTerminationPointEthernetUni(data)
- } else {
- medef, omciErr = me.NewVirtualEthernetInterfacePoint(data)
- }
- if omciErr != nil {
- return nil, omciErr.GetError()
- }
- pkt, err := omci.GenFrame(medef, omci.SetRequestType, omci.TransactionID(tid))
- if err != nil {
- omciLogger.WithField("err", err).Fatalf("Can't generate EnableUniRequest")
- }
- return HexEncode(pkt)
-}
-
-func CreateGemPortRequest(tid uint16) ([]byte, error) {
- params := me.ParamData{
- EntityID: 1,
- Attributes: me.AttributeValueMap{
- "PortId": 1,
- "TContPointer": 1,
- "Direction": 0,
- "TrafficManagementPointerForUpstream": 0,
- "TrafficDescriptorProfilePointerForUpstream": 0,
- "UniCounter": 0,
- "PriorityQueuePointerForDownStream": 0,
- "EncryptionState": 0,
- "TrafficDescriptorProfilePointerForDownstream": 0,
- "EncryptionKeyRing": 0,
- },
- }
- meDef, _ := me.NewGemPortNetworkCtp(params)
- pkt, err := omci.GenFrame(meDef, omci.CreateRequestType, omci.TransactionID(tid))
- if err != nil {
- omciLogger.WithField("err", err).Fatalf("Can't generate GemPortRequest")
- }
- return HexEncode(pkt)
-}