diff --git a/constants.go b/constants.go index f1c1f2c..07d4992 100644 --- a/constants.go +++ b/constants.go @@ -1,5 +1,7 @@ package psn -var PACKET_HEADER_SIZE = 16 -var MAX_UDP_PACKET_SIZE = 1500 -var CHUNK_HEADER_SIZE = 4 +const ( + PACKET_HEADER_SIZE = 16 + MAX_UDP_PACKET_SIZE = 1500 + CHUNK_HEADER_SIZE = 4 +) diff --git a/encoder.go b/encoder.go index adfe656..a893546 100644 --- a/encoder.go +++ b/encoder.go @@ -59,7 +59,6 @@ func (e *Encoder) GetInfoPackets(timestamp uint64, trackers []Tracker) [][]byte } func (e *Encoder) GetDataPackets(timestamp uint64, trackers []Tracker) [][]byte { - trackerChunks := [][]byte{} for _, tracker := range trackers { diff --git a/examples/benchmark/main.go b/examples/benchmark/main.go index 5ca70aa..6655e33 100644 --- a/examples/benchmark/main.go +++ b/examples/benchmark/main.go @@ -25,7 +25,6 @@ func getNTrackers(n int) []psn.Tracker { } func main() { - testSizes := []int{1, 10, 100, 1000} encoder := psn.Encoder{ SystemName: "test encoder", @@ -39,7 +38,6 @@ func main() { benchmark(trackerCount, iterations, encoder, *decoder) } } - } type BenchmarkResults struct { diff --git a/examples/decode/main.go b/examples/decode/main.go index 694c06f..39b55d2 100644 --- a/examples/decode/main.go +++ b/examples/decode/main.go @@ -10,13 +10,17 @@ import ( func main() { decoder := psn.NewDecoder() - infoPacketBytes := []byte{0x56, 0x67, 0x34, 0x80, 0x00, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x01, + infoPacketBytes := []byte{ + 0x56, 0x67, 0x34, 0x80, 0x00, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x01, 0x01, 0x01, 0x00, 0x0b, 0x00, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x02, 0x00, 0x11, - 0x80, 0x01, 0x00, 0x0d, 0x80, 0x00, 0x00, 0x09, 0x00, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x20, 0x31} + 0x80, 0x01, 0x00, 0x0d, 0x80, 0x00, 0x00, 0x09, 0x00, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x20, 0x31, + } - dataPacketBytes := []byte{0x55, 0x67, 0x28, 0x80, 0x00, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x01, + dataPacketBytes := []byte{ + 0x55, 0x67, 0x28, 0x80, 0x00, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x01, 0x01, 0x01, 0x00, 0x14, 0x80, 0x01, 0x00, 0x10, 0x80, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x80, 0x3f, 0x00, 0x00, - 0x80, 0x3f, 0x00, 0x00, 0x80, 0x3f} + 0x80, 0x3f, 0x00, 0x00, 0x80, 0x3f, + } decoder.Decode(infoPacketBytes) decoder.Decode(dataPacketBytes) diff --git a/examples/encode/main.go b/examples/encode/main.go index ac346fc..e63bf61 100644 --- a/examples/encode/main.go +++ b/examples/encode/main.go @@ -7,7 +7,6 @@ import ( ) func main() { - encoder := psn.Encoder{ SystemName: "Server Name", VersionHigh: 2, @@ -41,5 +40,4 @@ func main() { fmt.Printf("%v\n", infoPacket) } - } diff --git a/examples/psn_client/main.go b/examples/psn_client/main.go index a4f1819..406d48d 100644 --- a/examples/psn_client/main.go +++ b/examples/psn_client/main.go @@ -16,7 +16,6 @@ func main() { } client, err := net.ListenMulticastUDP("udp", nil, addr) - if err != nil { fmt.Printf("Error %v\n", err) return @@ -31,7 +30,6 @@ func main() { buffer := make([]byte, 2048) length, _, err := client.ReadFromUDP(buffer) - if err != nil { fmt.Printf("Error %v", err) } diff --git a/examples/psn_server/main.go b/examples/psn_server/main.go index d0b532b..f152cdd 100644 --- a/examples/psn_server/main.go +++ b/examples/psn_server/main.go @@ -11,7 +11,6 @@ import ( func main() { client, err := net.Dial("udp", "236.10.10.10:56565") - if err != nil { fmt.Printf("Error %v\n", err) return @@ -81,5 +80,4 @@ func main() { } } - } diff --git a/internal/decoders/chunk.go b/internal/decoders/chunk.go index 4af8cc5..60aba44 100644 --- a/internal/decoders/chunk.go +++ b/internal/decoders/chunk.go @@ -39,5 +39,4 @@ func DecodeChunk(bytes []byte) Chunk { Header: header, ChunkData: chunk_data, } - } diff --git a/internal/decoders/chunk_test.go b/internal/decoders/chunk_test.go index fbdc313..8fd0a52 100644 --- a/internal/decoders/chunk_test.go +++ b/internal/decoders/chunk_test.go @@ -7,7 +7,6 @@ import ( ) func TestChunkDecoding(t *testing.T) { - testCases := []struct { description string bytes []byte @@ -15,34 +14,42 @@ func TestChunkDecoding(t *testing.T) { }{ { description: "info packet", - bytes: []byte{0x56, 0x67, 0x34, 0x80, 0x00, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x01, + bytes: []byte{ + 0x56, 0x67, 0x34, 0x80, 0x00, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x01, 0x01, 0x01, 0x00, 0x0b, 0x00, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x02, 0x00, 0x11, - 0x80, 0x01, 0x00, 0x0d, 0x80, 0x00, 0x00, 0x09, 0x00, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x20, 0x31}, + 0x80, 0x01, 0x00, 0x0d, 0x80, 0x00, 0x00, 0x09, 0x00, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x20, 0x31, + }, expected: Chunk{ Header: ChunkHeader{ Id: uint16(26454), DataLen: uint16(52), HasSubchunks: true, }, - ChunkData: []byte{0x00, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x01, + ChunkData: []byte{ + 0x00, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x01, 0x01, 0x01, 0x00, 0x0b, 0x00, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x02, 0x00, 0x11, - 0x80, 0x01, 0x00, 0x0d, 0x80, 0x00, 0x00, 0x09, 0x00, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x20, 0x31}, + 0x80, 0x01, 0x00, 0x0d, 0x80, 0x00, 0x00, 0x09, 0x00, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x20, 0x31, + }, }, }, { description: "data packet", - bytes: []byte{0x55, 0x67, 0x28, 0x80, 0x00, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x01, + bytes: []byte{ + 0x55, 0x67, 0x28, 0x80, 0x00, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x01, 0x01, 0x01, 0x00, 0x14, 0x80, 0x01, 0x00, 0x10, 0x80, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x80, 0x3f, 0x00, 0x00, - 0x80, 0x3f, 0x00, 0x00, 0x80, 0x3f}, + 0x80, 0x3f, 0x00, 0x00, 0x80, 0x3f, + }, expected: Chunk{ Header: ChunkHeader{ Id: uint16(26453), DataLen: uint16(40), HasSubchunks: true, }, - ChunkData: []byte{0x00, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x01, + ChunkData: []byte{ + 0x00, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x01, 0x01, 0x01, 0x00, 0x14, 0x80, 0x01, 0x00, 0x10, 0x80, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x80, 0x3f, 0x00, 0x00, - 0x80, 0x3f, 0x00, 0x00, 0x80, 0x3f}, + 0x80, 0x3f, 0x00, 0x00, 0x80, 0x3f, + }, }, }, } diff --git a/internal/decoders/data_packet_chunk.go b/internal/decoders/data_packet_chunk.go index 7721f0f..f2a6915 100644 --- a/internal/decoders/data_packet_chunk.go +++ b/internal/decoders/data_packet_chunk.go @@ -23,7 +23,6 @@ func DecodeDataPacketChunk(bytes []byte) DataPacketChunk { offset := 0 for offset < int(chunk.Header.DataLen) { - switch id := binary.LittleEndian.Uint16(chunk.ChunkData[offset : offset+2]); id { case 0: packet_header := DecodePacketHeaderChunk(chunk.ChunkData[offset:]) diff --git a/internal/decoders/data_tracker_chunk.go b/internal/decoders/data_tracker_chunk.go index b64bae7..13cba83 100644 --- a/internal/decoders/data_tracker_chunk.go +++ b/internal/decoders/data_tracker_chunk.go @@ -28,7 +28,6 @@ func DecodeDataTrackerChunk(bytes []byte) DataTrackerChunk { offset := 0 for offset < int(chunk.Header.DataLen) { - switch id := binary.LittleEndian.Uint16(chunk.ChunkData[offset : offset+2]); id { case 0: pos := DecodeDataTrackerXYZChunk(chunk.ChunkData[offset:]) diff --git a/internal/decoders/data_tracker_list_chunk.go b/internal/decoders/data_tracker_list_chunk.go index d3add9b..2bbd0e1 100644 --- a/internal/decoders/data_tracker_list_chunk.go +++ b/internal/decoders/data_tracker_list_chunk.go @@ -32,5 +32,4 @@ func DecodeDataTrackerListChunk(bytes []byte) DataTrackerListChunk { Chunk: chunk, Data: data, } - } diff --git a/internal/decoders/data_tracker_status_chunk.go b/internal/decoders/data_tracker_status_chunk.go index b1b6a13..051f0d3 100644 --- a/internal/decoders/data_tracker_status_chunk.go +++ b/internal/decoders/data_tracker_status_chunk.go @@ -27,5 +27,4 @@ func DecodeDataTrackerStatusChunk(bytes []byte) DataTrackerStatusChunk { Chunk: chunk, Data: data, } - } diff --git a/internal/decoders/data_tracker_timestamp_chunk.go b/internal/decoders/data_tracker_timestamp_chunk.go index 650581b..28988ab 100644 --- a/internal/decoders/data_tracker_timestamp_chunk.go +++ b/internal/decoders/data_tracker_timestamp_chunk.go @@ -26,5 +26,4 @@ func DecodeDataTrackerTimestampChunk(bytes []byte) DataTrackerTimestampChunk { Chunk: chunk, Data: data, } - } diff --git a/internal/decoders/data_tracker_xyz_chunk.go b/internal/decoders/data_tracker_xyz_chunk.go index a17f82b..815a841 100644 --- a/internal/decoders/data_tracker_xyz_chunk.go +++ b/internal/decoders/data_tracker_xyz_chunk.go @@ -33,5 +33,4 @@ func DecodeDataTrackerXYZChunk(bytes []byte) DataTrackerXYZChunk { Chunk: chunk, Data: data, } - } diff --git a/internal/decoders/info_packet_chunk.go b/internal/decoders/info_packet_chunk.go index ce5608b..abbbeb5 100644 --- a/internal/decoders/info_packet_chunk.go +++ b/internal/decoders/info_packet_chunk.go @@ -24,7 +24,6 @@ func DecodeInfoPacketChunk(bytes []byte) InfoPacketChunk { offset := 0 for offset < int(chunk.Header.DataLen) { - switch id := binary.LittleEndian.Uint16(chunk.ChunkData[offset : offset+2]); id { case 0: packet_header := DecodePacketHeaderChunk(chunk.ChunkData[offset:]) diff --git a/internal/decoders/info_system_name_chunk.go b/internal/decoders/info_system_name_chunk.go index 8f7f433..df99254 100644 --- a/internal/decoders/info_system_name_chunk.go +++ b/internal/decoders/info_system_name_chunk.go @@ -21,5 +21,4 @@ func DecodeInfoSystemNameChunk(bytes []byte) InfoSystemNameChunk { Chunk: chunk, Data: data, } - } diff --git a/internal/decoders/info_tracker_chunk.go b/internal/decoders/info_tracker_chunk.go index 81eac74..efc0501 100644 --- a/internal/decoders/info_tracker_chunk.go +++ b/internal/decoders/info_tracker_chunk.go @@ -22,7 +22,6 @@ func DecodeInfoTrackerChunk(bytes []byte) InfoTrackerChunk { offset := 0 for offset < int(chunk.Header.DataLen) { - switch id := binary.LittleEndian.Uint16(chunk.ChunkData[offset : offset+2]); id { case 0: tracker_name := DecodeInfoTrackerNameChunk(chunk.ChunkData[offset:]) diff --git a/internal/decoders/info_tracker_list_chunk.go b/internal/decoders/info_tracker_list_chunk.go index 4d69b74..1a72cf7 100644 --- a/internal/decoders/info_tracker_list_chunk.go +++ b/internal/decoders/info_tracker_list_chunk.go @@ -33,5 +33,4 @@ func DecodeInfoTrackerListChunk(bytes []byte) InfoTrackerListChunk { Chunk: chunk, Data: data, } - } diff --git a/internal/decoders/info_tracker_name_chunk.go b/internal/decoders/info_tracker_name_chunk.go index f0909f3..70fcffb 100644 --- a/internal/decoders/info_tracker_name_chunk.go +++ b/internal/decoders/info_tracker_name_chunk.go @@ -22,5 +22,4 @@ func DecodeInfoTrackerNameChunk(bytes []byte) InfoTrackerNameChunk { Chunk: chunk, Data: data, } - } diff --git a/internal/decoders/packet_header_chunk.go b/internal/decoders/packet_header_chunk.go index 80181e9..f34b99f 100644 --- a/internal/decoders/packet_header_chunk.go +++ b/internal/decoders/packet_header_chunk.go @@ -36,5 +36,4 @@ func DecodePacketHeaderChunk(bytes []byte) PacketHeaderChunk { Chunk: chunk, Data: data, } - } diff --git a/internal/encoders/chunk.go b/internal/encoders/chunk.go index 5b98703..f1735f6 100644 --- a/internal/encoders/chunk.go +++ b/internal/encoders/chunk.go @@ -3,7 +3,6 @@ package encoders import "encoding/binary" func EncodeChunk(id uint16, chunkData []byte, hasSubchunks bool) []byte { - header := []byte{} header = binary.LittleEndian.AppendUint16(header, id)