Skip to content

Commit 7416fac

Browse files
committed
bugfix: More robust bad message parsing in CI connection
1 parent a6c306d commit 7416fac

File tree

11 files changed

+88
-14
lines changed

11 files changed

+88
-14
lines changed

cmd/ssl-auto-ref-client/main.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@ import (
77
"fmt"
88
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/geom"
99
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/rcon"
10+
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/sslconn"
1011
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/state"
1112
"github.com/RoboCup-SSL/ssl-game-controller/pkg/client"
12-
"github.com/RoboCup-SSL/ssl-go-tools/pkg/sslconn"
1313
"log"
1414
"net"
1515
"os"

cmd/ssl-ci-test-client/main.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ import (
66
"fmt"
77
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/ci"
88
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/geom"
9+
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/sslconn"
910
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/tracker"
10-
"github.com/RoboCup-SSL/ssl-go-tools/pkg/sslconn"
1111
"github.com/odeke-em/go-uuid"
1212
"log"
1313
"net"

cmd/ssl-remote-control-client/main.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ import (
66
"flag"
77
"fmt"
88
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/rcon"
9+
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/sslconn"
910
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/state"
1011
"github.com/RoboCup-SSL/ssl-game-controller/pkg/client"
11-
"github.com/RoboCup-SSL/ssl-go-tools/pkg/sslconn"
1212
"github.com/golang/protobuf/proto"
1313
"log"
1414
"net"

cmd/ssl-team-client/main.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ import (
44
"crypto/rsa"
55
"flag"
66
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/rcon"
7+
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/sslconn"
78
"github.com/RoboCup-SSL/ssl-game-controller/pkg/client"
8-
"github.com/RoboCup-SSL/ssl-go-tools/pkg/sslconn"
99
"github.com/golang/protobuf/proto"
1010
"log"
1111
"net"

go.mod

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ module github.com/RoboCup-SSL/ssl-game-controller
33
go 1.14
44

55
require (
6-
github.com/RoboCup-SSL/ssl-go-tools v1.0.0
76
github.com/go-test/deep v1.0.5
87
github.com/gobuffalo/packr v1.30.1
98
github.com/golang/protobuf v1.3.5

go.sum

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
2-
github.com/RoboCup-SSL/ssl-go-tools v1.0.0 h1:6cWzHRw3KfdizTxktk5Ne8se2rIC9prEQs7ycNU+hgw=
3-
github.com/RoboCup-SSL/ssl-go-tools v1.0.0/go.mod h1:W1I/ErdW1PfalvkLIZHC6B7uNJx2YHPHFOUS+ZmyFM8=
42
github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8=
53
github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE=
64
github.com/coreos/go-etcd v2.0.0+incompatible/go.mod h1:Jez6KQU2B/sWsbdaef3ED8NzMklzPG4d5KIOhIy30Tk=
@@ -22,7 +20,6 @@ github.com/gobuffalo/packr v1.30.1 h1:hu1fuVR3fXEZR7rXNW3h8rqSML8EVAf6KNm0NKO/wK
2220
github.com/gobuffalo/packr v1.30.1/go.mod h1:ljMyFO2EcrnzsHsN99cvbq055Y9OhRrIaviy289eRuk=
2321
github.com/gobuffalo/packr/v2 v2.5.1 h1:TFOeY2VoGamPjQLiNDT3mn//ytzk236VMO2j7iHxJR4=
2422
github.com/gobuffalo/packr/v2 v2.5.1/go.mod h1:8f9c96ITobJlPzI44jj+4tHnEKNt0xXWSVlXRN9X1Iw=
25-
github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
2623
github.com/golang/protobuf v1.3.5 h1:F768QJ1E9tib+q5Sc8MkdJi1RxLTbRcTf8LJV56aRls=
2724
github.com/golang/protobuf v1.3.5/go.mod h1:6O5/vntMXwX2lRkT1hjjk0nAC1IDOTvTlVgjlRvqsdk=
2825
github.com/gorilla/websocket v1.4.1 h1:q7AeDBpnBk8AogcD4DSag/Ukw/KV+YhzLj2bP5HvKCM=
@@ -48,7 +45,6 @@ github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh
4845
github.com/odeke-em/go-uuid v0.0.0-20151221120446-b211d769a9aa h1:XEhClAZN5U0GUTFRgRdPNgAKO4mP++S+zbqXH+Pr9nU=
4946
github.com/odeke-em/go-uuid v0.0.0-20151221120446-b211d769a9aa/go.mod h1:omlfAqAAOXYL53jxw8wG+G2xH7NqbkJPlDeGP9YpP6g=
5047
github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic=
51-
github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
5248
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
5349
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
5450
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=

internal/app/ci/ci.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
package ci
22

33
import (
4+
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/sslconn"
45
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/state"
56
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/tracker"
6-
"github.com/RoboCup-SSL/ssl-go-tools/pkg/sslconn"
77
"log"
88
"net"
99
"sync"
@@ -67,9 +67,12 @@ func (s *Server) serve(conn net.Conn) {
6767

6868
for {
6969
input := CiInput{}
70-
if err := sslconn.ReceiveMessage(conn, &input); err != nil {
70+
if data, err := sslconn.Receive(conn); err != nil {
7171
log.Println("Could not receive message from CI connection: ", err)
7272
return
73+
} else if err := sslconn.Unmarshal(data, &input); err != nil {
74+
log.Println("Could not unmarshal message: ", err)
75+
continue
7376
}
7477

7578
if input.TrackerPacket != nil {

internal/app/rcon/server_autoref.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ package rcon
22

33
import (
44
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/engine"
5+
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/sslconn"
56
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/state"
6-
"github.com/RoboCup-SSL/ssl-go-tools/pkg/sslconn"
77
"github.com/odeke-em/go-uuid"
88
"github.com/pkg/errors"
99
"io"

internal/app/rcon/server_remotecontrol.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ package rcon
22

33
import (
44
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/engine"
5+
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/sslconn"
56
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/state"
67
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/statemachine"
7-
"github.com/RoboCup-SSL/ssl-go-tools/pkg/sslconn"
88
"github.com/golang/protobuf/proto"
99
"github.com/golang/protobuf/ptypes/timestamp"
1010
"github.com/odeke-em/go-uuid"

internal/app/rcon/server_team.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ package rcon
22

33
import (
44
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/engine"
5+
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/sslconn"
56
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/state"
67
"github.com/RoboCup-SSL/ssl-game-controller/internal/app/statemachine"
7-
"github.com/RoboCup-SSL/ssl-go-tools/pkg/sslconn"
88
"github.com/golang/protobuf/proto"
99
"github.com/odeke-em/go-uuid"
1010
"github.com/pkg/errors"

0 commit comments

Comments
 (0)