Move common/utils.go to device/utils.go.
The utility functions ConvB2S(), OnuToSn(), LoggerWithOnu() in common/utils.go strongly depend on ONU instance specification.
Then, I consider it should be in device package that contains ONU instance , not utils package.
Change-Id: I7fd2b21c5f7c51be8ec4a5c161da9c93e3a3f582
diff --git a/core/api_service.go b/core/api_service.go
index a826594..1800e9e 100644
--- a/core/api_service.go
+++ b/core/api_service.go
@@ -22,15 +22,13 @@
"net/http"
"sync"
- "gerrit.opencord.org/voltha-bbsim/device"
-
pb "gerrit.opencord.org/voltha-bbsim/api"
+ "gerrit.opencord.org/voltha-bbsim/common/logger"
+ "gerrit.opencord.org/voltha-bbsim/device"
"github.com/grpc-ecosystem/grpc-gateway/runtime"
"google.golang.org/grpc"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/status"
-
- "gerrit.opencord.org/voltha-bbsim/common/logger"
)
// Response Constants
diff --git a/core/core_server.go b/core/core_server.go
index 4c4fcab..69c0bc8 100644
--- a/core/core_server.go
+++ b/core/core_server.go
@@ -26,7 +26,6 @@
pb "gerrit.opencord.org/voltha-bbsim/api"
"gerrit.opencord.org/voltha-bbsim/common/logger"
- "gerrit.opencord.org/voltha-bbsim/common/utils"
"gerrit.opencord.org/voltha-bbsim/device"
flowHandler "gerrit.opencord.org/voltha-bbsim/flow"
openolt "gerrit.opencord.org/voltha-bbsim/protos"
@@ -169,7 +168,7 @@
for i := 0; i < MaxOnusPerPon; i++ {
oltid := s.Olt.ID
intfid := uint32(1)
- sn := utils.ConvB2S(device.NewSN(oltid, intfid, uint32(i)))
+ sn := device.ConvB2S(device.NewSN(oltid, intfid, uint32(i)))
s.CtagMap[sn] = uint32(900 + i) // This is hard coded for BBWF
}
@@ -573,18 +572,18 @@
logger.Error("Failed to GetOnuByID:%d", onuid)
continue
}
- sn := utils.ConvB2S(onu.SerialNumber.VendorSpecific)
+ sn := device.ConvB2S(onu.SerialNumber.VendorSpecific)
if ctag, ok := s.CtagMap[sn]; ok == true {
tagpkt, err := PushVLAN(pkt, uint16(ctag), onu)
if err != nil {
- utils.LoggerWithOnu(onu).WithFields(log.Fields{
+ device.LoggerWithOnu(onu).WithFields(log.Fields{
"gemId": gemid,
}).Error("Fail to tag C-tag")
} else {
pkt = tagpkt
}
} else {
- utils.LoggerWithOnu(onu).WithFields(log.Fields{
+ device.LoggerWithOnu(onu).WithFields(log.Fields{
"gemId": gemid,
"cTagMap": s.CtagMap,
}).Error("Could not find onuid in CtagMap", onuid, sn, s.CtagMap)
@@ -609,7 +608,7 @@
intfid := nnipkt.Info.intfid
onu, _ := s.GetOnuByID(onuid, intfid)
- utils.LoggerWithOnu(onu).Info("Received packet from NNI in grpc Server.")
+ device.LoggerWithOnu(onu).Info("Received packet from NNI in grpc Server.")
pkt := nnipkt.Pkt
data = &openolt.Indication_PktInd{PktInd: &openolt.PacketIndication{IntfType: "nni", IntfId: intfid, Pkt: pkt.Data()}}
@@ -637,12 +636,12 @@
pkt, _ := layerEth.(*layers.Ethernet)
ethtype := pkt.EthernetType
if ethtype == layers.EthernetTypeEAPOL {
- utils.LoggerWithOnu(onu).Info("Received downstream packet is EAPOL.")
+ device.LoggerWithOnu(onu).Info("Received downstream packet is EAPOL.")
eapolPkt := byteMsg{IntfId: intfid, OnuId: onuid, Byte: rawpkt.Data()}
s.eapolOut <- &eapolPkt
return nil
} else if layerDHCP := rawpkt.Layer(layers.LayerTypeDHCPv4); layerDHCP != nil {
- utils.LoggerWithOnu(onu).WithFields(log.Fields{
+ device.LoggerWithOnu(onu).WithFields(log.Fields{
"payload": layerDHCP.LayerPayload(),
"type": layerDHCP.LayerType().String(),
}).Info("Received downstream packet is DHCP.")
@@ -653,7 +652,7 @@
s.dhcpOut <- &dhcpPkt
return nil
} else {
- utils.LoggerWithOnu(onu).Info("WARNING: Received packet is not EAPOL or DHCP")
+ device.LoggerWithOnu(onu).Warn("WARNING: Received packet is not EAPOL or DHCP")
return nil
}
ioinfo, err := s.identifyUniIoinfo("inside", intfid, onuid)
@@ -664,7 +663,7 @@
SendUni(handle, rawpkt, onu)
return nil
}
- utils.LoggerWithOnu(onu).Info("WARNING: Received packet does not have layerEth")
+ device.LoggerWithOnu(onu).Info("WARNING: Received packet does not have layerEth")
return nil
}
@@ -771,7 +770,7 @@
}
func stringifySerialNumber(serialNum *openolt.SerialNumber) string {
- return string(serialNum.VendorId) + utils.ConvB2S(serialNum.VendorSpecific)
+ return string(serialNum.VendorId) + device.ConvB2S(serialNum.VendorSpecific)
}
func getOpenoltSerialNumber(SerialNumber string) (*openolt.SerialNumber, error) {
diff --git a/core/grpc_service.go b/core/grpc_service.go
index 2d216d8..edf7d1b 100644
--- a/core/grpc_service.go
+++ b/core/grpc_service.go
@@ -20,7 +20,6 @@
"net"
"gerrit.opencord.org/voltha-bbsim/common/logger"
- "gerrit.opencord.org/voltha-bbsim/common/utils"
"gerrit.opencord.org/voltha-bbsim/device"
flowHandler "gerrit.opencord.org/voltha-bbsim/flow"
openolt "gerrit.opencord.org/voltha-bbsim/protos"
@@ -187,12 +186,12 @@
logger.Error("Failed in OnuPacketOut, %v", err)
return new(openolt.Empty), err
}
- utils.LoggerWithOnu(onu).Debugf("OLT %d receives OnuPacketOut () to IF-ID:%d ONU-ID %d.", s.Olt.ID, packet.IntfId, packet.OnuId)
+ device.LoggerWithOnu(onu).Debugf("OLT %d receives OnuPacketOut () to IF-ID:%d ONU-ID %d.", s.Olt.ID, packet.IntfId, packet.OnuId)
onuid := packet.OnuId
intfid := packet.IntfId
rawpkt := gopacket.NewPacket(packet.Pkt, layers.LayerTypeEthernet, gopacket.Default)
if err := s.onuPacketOut(intfid, onuid, rawpkt); err != nil {
- utils.LoggerWithOnu(onu).WithField("error", err).Errorf("OnuPacketOut Error ")
+ device.LoggerWithOnu(onu).WithField("error", err).Errorf("OnuPacketOut Error ")
return new(openolt.Empty), err
}
return new(openolt.Empty), nil
@@ -234,7 +233,7 @@
if err == nil {
onu.GemportID = uint16(flow.GemportId)
- utils.LoggerWithOnu(onu).WithFields(log.Fields{
+ device.LoggerWithOnu(onu).WithFields(log.Fields{
"olt": s.Olt.ID,
"c_tag": flow.Action.IVid,
}).Debug("OLT receives FlowAdd().")
@@ -293,7 +292,7 @@
} else {
// Delete flowID from onu
onu.DeleteFlowID(flow.FlowId)
- utils.LoggerWithOnu(onu).WithFields(log.Fields{
+ device.LoggerWithOnu(onu).WithFields(log.Fields{
"olt": s.Olt.ID,
"c_tag": flow.Action.IVid,
}).Debug("OLT receives FlowRemove().")
diff --git a/core/io_worker.go b/core/io_worker.go
index c59b903..00ecda3 100644
--- a/core/io_worker.go
+++ b/core/io_worker.go
@@ -18,14 +18,14 @@
import (
"errors"
+ "net"
+ "strconv"
+
"gerrit.opencord.org/voltha-bbsim/common/logger"
- "gerrit.opencord.org/voltha-bbsim/common/utils"
"gerrit.opencord.org/voltha-bbsim/device"
"github.com/google/gopacket"
"github.com/google/gopacket/layers"
"github.com/google/gopacket/pcap"
- "net"
- "strconv"
)
// RecvWorker receives the packet and forwards to the channel
@@ -46,9 +46,9 @@
func SendUni(handle *pcap.Handle, packet gopacket.Packet, onu *device.Onu) {
err := handle.WritePacketData(packet.Data())
if err != nil {
- utils.LoggerWithOnu(onu).Errorf("Error in send packet to UNI-IF: %v e:%v", *handle, err)
+ device.LoggerWithOnu(onu).Errorf("Error in send packet to UNI-IF: %v e:%v", *handle, err)
}
- utils.LoggerWithOnu(onu).Debugf("Successfully send packet to UNI-IF: %v", *handle)
+ device.LoggerWithOnu(onu).Debugf("Successfully send packet to UNI-IF: %v", *handle)
}
// SendNni sends packaet to NNI interface
@@ -117,7 +117,7 @@
layers.LayerTypeEthernet,
gopacket.Default,
)
- utils.LoggerWithOnu(onu).Debugf("Push the 802.1Q header (VID: %d)", vid)
+ device.LoggerWithOnu(onu).Debugf("Push the 802.1Q header (VID: %d)", vid)
return ret, nil
}
return nil, errors.New("failed to push vlan")
@@ -177,7 +177,7 @@
snapshotLen int32 = 1518
promiscuous = false
err error
- timeout = pcap.BlockForever
+ timeout = pcap.BlockForever
)
handle, err := pcap.OpenLive(device, snapshotLen, promiscuous, timeout)
if err != nil {
diff --git a/core/omci.go b/core/omci.go
index a83c07a..2566f2a 100644
--- a/core/omci.go
+++ b/core/omci.go
@@ -18,6 +18,7 @@
import (
"context"
+
"gerrit.opencord.org/voltha-bbsim/common/logger"
openolt "gerrit.opencord.org/voltha-bbsim/protos"
omci "github.com/opencord/omci-sim"
@@ -43,7 +44,6 @@
omciIn <- resp
s.handleOmciAction(resp.Pkt, resp.IntfId, resp.OnuId)
-
case *omci.OmciError:
// Error in processing omci message. Log and carry on.
logger.Debug("%s", err.Msg)
diff --git a/core/openolt_service.go b/core/openolt_service.go
index dc48577..489e185 100644
--- a/core/openolt_service.go
+++ b/core/openolt_service.go
@@ -20,7 +20,6 @@
"time"
"gerrit.opencord.org/voltha-bbsim/common/logger"
- "gerrit.opencord.org/voltha-bbsim/common/utils"
"gerrit.opencord.org/voltha-bbsim/device"
openolt "gerrit.opencord.org/voltha-bbsim/protos"
)
@@ -88,24 +87,24 @@
logger.Error("Failed to send ONUDiscInd [id: %d]: %v", onu.OnuID, err)
return err
}
- utils.LoggerWithOnu(onu).Info("sendONUDiscInd Onuid")
+ device.LoggerWithOnu(onu).Info("sendONUDiscInd Onuid")
return nil
}
func sendOnuInd(stream openolt.Openolt_EnableIndicationServer, onu *device.Onu, delay int, operState string, adminState string) error {
time.Sleep(time.Duration(delay) * time.Millisecond)
data := &openolt.Indication_OnuInd{OnuInd: &openolt.OnuIndication{
- IntfId: onu.IntfID,
- OnuId: onu.OnuID,
- OperState: operState,
- AdminState: adminState,
- SerialNumber: onu.SerialNumber,
+ IntfId: onu.IntfID,
+ OnuId: onu.OnuID,
+ OperState: operState,
+ AdminState: adminState,
+ SerialNumber: onu.SerialNumber,
}}
if err := stream.Send(&openolt.Indication{Data: data}); err != nil {
logger.Error("Failed to send ONUInd [id: %d]: %v", onu.OnuID, err)
return err
}
- utils.LoggerWithOnu(onu).Info("sendONUInd Onuid")
+ device.LoggerWithOnu(onu).Info("sendONUInd Onuid")
return nil
}