Apply go fix modernizations
This commit is contained in:
@@ -60,10 +60,7 @@ func FuzzBuildParseRoundtrip(f *testing.F) {
|
||||
if dataPkt.Universe != universe {
|
||||
t.Fatalf("universe mismatch: sent %d, got %d", universe, dataPkt.Universe)
|
||||
}
|
||||
expectedLen := len(dmxInput)
|
||||
if expectedLen > 512 {
|
||||
expectedLen = 512
|
||||
}
|
||||
expectedLen := min(len(dmxInput), 512)
|
||||
if !bytes.Equal(dataPkt.Data[:expectedLen], dmxInput[:expectedLen]) {
|
||||
t.Fatalf("dmx data mismatch")
|
||||
}
|
||||
|
||||
21
protocol.go
21
protocol.go
@@ -58,7 +58,7 @@ func MulticastAddr(universe uint16) *net.UDPAddr {
|
||||
}
|
||||
}
|
||||
|
||||
func ParsePacket(data []byte) (interface{}, error) {
|
||||
func ParsePacket(data []byte) (any, error) {
|
||||
if len(data) < 22 {
|
||||
return nil, ErrPacketTooShort
|
||||
}
|
||||
@@ -99,10 +99,7 @@ func parseDataPacket(data []byte) (*DataPacket, error) {
|
||||
return nil, ErrPacketTooShort
|
||||
}
|
||||
|
||||
dmxLen := int(propCount) - 1
|
||||
if dmxLen > 512 {
|
||||
dmxLen = 512
|
||||
}
|
||||
dmxLen := min(int(propCount)-1, 512)
|
||||
|
||||
if len(data) < 126+dmxLen {
|
||||
return nil, ErrPacketTooShort
|
||||
@@ -121,7 +118,7 @@ func parseDataPacket(data []byte) (*DataPacket, error) {
|
||||
return pkt, nil
|
||||
}
|
||||
|
||||
func parseExtendedPacket(data []byte) (interface{}, error) {
|
||||
func parseExtendedPacket(data []byte) (any, error) {
|
||||
if len(data) < 118 {
|
||||
return nil, ErrPacketTooShort
|
||||
}
|
||||
@@ -149,7 +146,7 @@ func parseExtendedPacket(data []byte) (interface{}, error) {
|
||||
|
||||
universeCount := (len(data) - 120) / 2
|
||||
pkt.Universes = make([]uint16, 0, universeCount)
|
||||
for i := 0; i < universeCount; i++ {
|
||||
for i := range universeCount {
|
||||
u := binary.BigEndian.Uint16(data[120+i*2 : 122+i*2])
|
||||
if u >= 1 && u <= 63999 {
|
||||
pkt.Universes = append(pkt.Universes, u)
|
||||
@@ -160,10 +157,7 @@ func parseExtendedPacket(data []byte) (interface{}, error) {
|
||||
}
|
||||
|
||||
func BuildDataPacket(universe uint16, sequence uint8, sourceName string, cid [16]byte, data []byte) []byte {
|
||||
dataLen := len(data)
|
||||
if dataLen > 512 {
|
||||
dataLen = 512
|
||||
}
|
||||
dataLen := min(len(data), 512)
|
||||
|
||||
pktLen := 126 + dataLen
|
||||
buf := make([]byte, pktLen)
|
||||
@@ -200,10 +194,7 @@ func BuildDataPacket(universe uint16, sequence uint8, sourceName string, cid [16
|
||||
}
|
||||
|
||||
func BuildDiscoveryPacket(sourceName string, cid [16]byte, page, lastPage uint8, universes []uint16) []byte {
|
||||
universeCount := len(universes)
|
||||
if universeCount > 512 {
|
||||
universeCount = 512
|
||||
}
|
||||
universeCount := min(len(universes), 512)
|
||||
|
||||
pktLen := 120 + universeCount*2
|
||||
buf := make([]byte, pktLen)
|
||||
|
||||
@@ -9,7 +9,7 @@ import (
|
||||
|
||||
type Receiver struct {
|
||||
conn *multicast.Conn
|
||||
handler func(src *net.UDPAddr, pkt interface{})
|
||||
handler func(src *net.UDPAddr, pkt any)
|
||||
done chan struct{}
|
||||
}
|
||||
|
||||
@@ -60,7 +60,7 @@ func NewDiscoveryReceiver(iface *net.Interface) (*Receiver, error) {
|
||||
}, nil
|
||||
}
|
||||
|
||||
func (r *Receiver) SetHandler(fn func(src *net.UDPAddr, pkt interface{})) {
|
||||
func (r *Receiver) SetHandler(fn func(src *net.UDPAddr, pkt any)) {
|
||||
r.handler = fn
|
||||
}
|
||||
|
||||
|
||||
11
sender.go
11
sender.go
@@ -3,7 +3,7 @@ package sacn
|
||||
import (
|
||||
"crypto/rand"
|
||||
"net"
|
||||
"sort"
|
||||
"slices"
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
@@ -128,17 +128,14 @@ func (s *Sender) sendDiscovery() {
|
||||
return
|
||||
}
|
||||
|
||||
sort.Slice(universes, func(i, j int) bool { return universes[i] < universes[j] })
|
||||
slices.Sort(universes)
|
||||
|
||||
const maxPerPage = 512
|
||||
totalPages := (len(universes) + maxPerPage - 1) / maxPerPage
|
||||
|
||||
for page := 0; page < totalPages; page++ {
|
||||
for page := range totalPages {
|
||||
start := page * maxPerPage
|
||||
end := start + maxPerPage
|
||||
if end > len(universes) {
|
||||
end = len(universes)
|
||||
}
|
||||
end := min(start+maxPerPage, len(universes))
|
||||
pkt := BuildDiscoveryPacket(s.sourceName, s.cid, uint8(page), uint8(totalPages-1), universes[start:end])
|
||||
s.conn.WriteToUDP(pkt, DiscoveryAddr)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user