aboutsummaryrefslogtreecommitdiff
path: root/hotline/tracker_test.go
diff options
context:
space:
mode:
authorJeff Halter <868228+jhalter@users.noreply.github.com>2023-05-28 09:39:33 -0700
committerJeff Halter <868228+jhalter@users.noreply.github.com>2023-05-28 09:39:33 -0700
commit04f402736027ced9bfbbf628136dc4872b671555 (patch)
treec3787d610f4be99499ca6102913548c22a4ee34b /hotline/tracker_test.go
parenta8e89ca4e65f5db3ee6061ede68aade814b4d75c (diff)
Handler tracker list errors
Diffstat (limited to 'hotline/tracker_test.go')
-rw-r--r--hotline/tracker_test.go38
1 files changed, 38 insertions, 0 deletions
diff --git a/hotline/tracker_test.go b/hotline/tracker_test.go
index 3e0be5d..481f916 100644
--- a/hotline/tracker_test.go
+++ b/hotline/tracker_test.go
@@ -139,6 +139,44 @@ func Test_serverScanner(t *testing.T) {
wantToken: []byte(nil),
wantErr: assert.NoError,
},
+ {
+ name: "when nameLen exceeds provided data",
+ args: args{
+ data: []byte{
+ 0x18, 0x05, 0x30, 0x63, // IP Addr
+ 0x15, 0x7c, // Port
+ 0x00, 0x02, // UserCount
+ 0x00, 0x00, // ??
+ 0xff, // Name Len
+ 0x54, 0x68, 0x65, // Name
+ 0x03, // Desc Len
+ 0x54, 0x54, 0x54, // Description
+ },
+ atEOF: false,
+ },
+ wantAdvance: 0,
+ wantToken: []byte(nil),
+ wantErr: assert.NoError,
+ },
+ {
+ name: "when description len exceeds provided data",
+ args: args{
+ data: []byte{
+ 0x18, 0x05, 0x30, 0x63, // IP Addr
+ 0x15, 0x7c, // Port
+ 0x00, 0x02, // UserCount
+ 0x00, 0x00, // ??
+ 0x03, // Name Len
+ 0x54, 0x68, 0x65, // Name
+ 0xff, // Desc Len
+ 0x54, 0x54, 0x54, // Description
+ },
+ atEOF: false,
+ },
+ wantAdvance: 0,
+ wantToken: []byte(nil),
+ wantErr: assert.NoError,
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {