Skip to content

Commit

Permalink
fix linter notes
Browse files Browse the repository at this point in the history
  • Loading branch information
kdudkov committed Dec 4, 2023
1 parent ef87947 commit 6ef71b6
Show file tree
Hide file tree
Showing 28 changed files with 104 additions and 123 deletions.
4 changes: 4 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,10 @@ test:
build: clean dep
go build $(LDFLAGS) -o dist/ ./cmd/...

.PHONY: lint
lint:
golangci-lint run ./... -p bugs -D gosec --fix

.PHONY: gox
gox: clean dep
GOARM=6 gox --osarch="linux/amd64 linux/arm windows/amd64 darwin/arm64" -output "dist/{{.OS}}_{{.Arch}}/{{.Dir}}" $(LDFLAGS) ./cmd/...
2 changes: 1 addition & 1 deletion cmd/goatak_server/cert_api.go
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ func signClientCert(clientCSR *x509.CertificateRequest, serverCert *x509.Certifi
certBytes, err := x509.CreateCertificate(rand.Reader, &template, serverCert, clientCSR.PublicKey, privateKey)

if err != nil {
return nil, fmt.Errorf("failed to generate certificate, error: %s", err)
return nil, fmt.Errorf("failed to generate certificate, error: %w", err)
}

return x509.ParseCertificate(certBytes)
Expand Down
25 changes: 8 additions & 17 deletions cmd/goatak_server/cert_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ import (
"crypto/tls"
"crypto/x509"
"fmt"
"io/ioutil"
"log"
"os"
"testing"
"time"

Expand All @@ -17,15 +17,15 @@ func TestCert(t *testing.T) {
t.SkipNow()

go func() {
Server(":55555", "../../ca.pem", "../../ca.key")
_ = Server(":55555", "../../ca.pem", "../../ca.key")
}()

time.Sleep(time.Millisecond * 500)
Client("127.0.0.1:55555", "../../ca.pem", "../../test_server.p12", "111111")
}

func Server(addr, certFile, keyFile string) (err error) {
caCertPEM, err := ioutil.ReadFile(certFile)
caCertPEM, err := os.ReadFile(certFile)
if err != nil {
panic(err)
}
Expand Down Expand Up @@ -64,16 +64,16 @@ func Server(addr, certFile, keyFile string) (err error) {
c1 := conn.(*tls.Conn)
if err := c1.Handshake(); err != nil {
log.Printf("Handshake error: %#v", err)
c1.Close()
_ = c1.Close()
continue
}

log.Printf("%d", len(c1.ConnectionState().PeerCertificates))
for _, c := range c1.ConnectionState().PeerCertificates {
log.Printf(c.Subject.CommonName)
}
c1.Write([]byte("Ok"))
c1.Close()
_, _ = c1.Write([]byte("Ok"))
_ = c1.Close()
}
}

Expand All @@ -93,7 +93,7 @@ func Client(addr, caFile, p12file, passw string) {
}

func getTlsConfig(caFile, p12File string, passw string) *tls.Config {
p12Data, err := ioutil.ReadFile(p12File)
p12Data, err := os.ReadFile(p12File)
if err != nil {
panic(err)
}
Expand All @@ -109,7 +109,7 @@ func getTlsConfig(caFile, p12File string, passw string) *tls.Config {
Leaf: cert,
}

ca, err := ioutil.ReadFile(caFile)
ca, err := os.ReadFile(caFile)
if err != nil {
panic(err)
}
Expand All @@ -119,12 +119,3 @@ func getTlsConfig(caFile, p12File string, passw string) *tls.Config {

return &tls.Config{Certificates: []tls.Certificate{tlsCert}, RootCAs: roots}
}

func getTlsConfig2(certFile string, keyFile string) *tls.Config {
cert, err := tls.LoadX509KeyPair(certFile, keyFile)
if err != nil {
panic(err)
}

return &tls.Config{Certificates: []tls.Certificate{cert}}
}
2 changes: 1 addition & 1 deletion cmd/goatak_server/http_server.go
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ func NewHttp(app *App) *HttpServer {
renderer := new(staticfiles.Renderer)
renderer.LeftDelimeter = "[["
renderer.RightDelimeter = "]]"
renderer.Load(templates)
_ = renderer.Load(templates)

srv := &HttpServer{
app: app,
Expand Down
6 changes: 2 additions & 4 deletions cmd/goatak_server/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@ func (app *App) Run() {
}

c := make(chan os.Signal, 1)
signal.Notify(c, syscall.SIGINT, syscall.SIGTERM, syscall.SIGKILL)
signal.Notify(c, syscall.SIGINT, syscall.SIGTERM)
<-c
app.Logger.Info("exiting...")
cancel()
Expand Down Expand Up @@ -257,10 +257,8 @@ func (app *App) connect(connectStr string) (net.Conn, error) {
switch parts[2] {
case "tcp":
tlsConn = false
break
case "ssl":
tlsConn = true
break
default:
return nil, fmt.Errorf("invalid connect string: %s", connectStr)
}
Expand Down Expand Up @@ -506,7 +504,7 @@ func main() {

err := viper.ReadInConfig()
if err != nil {
panic(fmt.Errorf("Fatal error config file: %s \n", err))
panic(fmt.Errorf("Fatal error config file: %w \n", err))
}

flag.Parse()
Expand Down
1 change: 0 additions & 1 deletion cmd/goatak_server/marti_api.go
Original file line number Diff line number Diff line change
Expand Up @@ -356,7 +356,6 @@ func getProfileConnectionHandler(app *App) func(req *air.Request, res *air.Respo
func getVideoListHandler(app *App) func(req *air.Request, res *air.Response) error {
return func(req *air.Request, res *air.Response) error {
r := new(model.VideoConnections)
r.XMLName = xml.Name{Local: "videoConnections"}
app.feeds.ForEach(func(f *model.Feed2) bool {
r.Feeds = append(r.Feeds, f.ToFeed())
return true
Expand Down
4 changes: 2 additions & 2 deletions cmd/goatak_server/mission_package_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,6 @@ func TestMissionPackage_Create(t *testing.T) {
}

f, _ := os.Create("/tmp/profile.zip")
f.Write(dat)
f.Close()
_, _ = f.Write(dat)
_ = f.Close()
}
5 changes: 3 additions & 2 deletions cmd/goatak_server/parse_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ package main
import (
"encoding/xml"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"testing"

"github.com/kdudkov/goatak/pkg/cot"
Expand All @@ -26,12 +27,12 @@ func TestParseEvent(t *testing.T) {

e := &cot.Event{}

assert.NoError(t, xml.Unmarshal([]byte(data), e))
require.NoError(t, xml.Unmarshal([]byte(data), e))

assert.Equal(t, "a-f-G-U-C", e.Type)

c, err := cot.EventToProto(e)
assert.NoError(t, err)
require.NoError(t, err)

assert.Equal(t, "ANDROID-aabbcc5577", c.GetUid())
assert.Equal(t, "a-f-G-U-C", c.GetType())
Expand Down
5 changes: 2 additions & 3 deletions cmd/goatak_server/ws.go
Original file line number Diff line number Diff line change
Expand Up @@ -135,9 +135,8 @@ func (w *WsClientHandler) Listen() {

if cotmsg.IsContact() {
uid := msg.GetCotEvent().GetUid()
if strings.HasSuffix(uid, "-ping") {
uid = uid[:len(uid)-5]
}
uid = strings.TrimSuffix(uid, "-ping")

w.uids.Store(uid, cotmsg.GetCallsign())
}

Expand Down
6 changes: 5 additions & 1 deletion cmd/takreplay/main.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package main

import (
"errors"
"flag"
"fmt"
"io"
Expand Down Expand Up @@ -52,7 +53,7 @@ func main() {
os.Exit(1)
}

if err := readFile(f, *uid, *typ, dmp); err != io.EOF {
if err := readFile(f, *uid, *typ, dmp); !errors.Is(err, io.EOF) {
fmt.Println(err)
}
}
Expand Down Expand Up @@ -88,6 +89,9 @@ func readFile(f *os.File, uid, typ string, dmp Dumper) error {
}

d, err := cot.DetailsFromString(m.GetCotEvent().GetDetail().GetXmlDetail())
if err != nil {
return err
}
msg := &cot.CotMessage{TakMessage: m, Detail: d}
if err = dmp.Process(msg); err != nil {
return err
Expand Down
12 changes: 1 addition & 11 deletions cmd/webclient/http_server.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@ package main
import (
"embed"
"encoding/json"
"fmt"

"github.com/aofei/air"
"github.com/google/uuid"
"runtime/pprof"
Expand All @@ -25,7 +23,7 @@ func NewHttp(app *App, address string) *air.Air {
renderer := new(staticfiles.Renderer)
renderer.LeftDelimeter = "[["
renderer.RightDelimeter = "]]"
renderer.Load(templates)
_ = renderer.Load(templates)

srv.GET("/", getIndexHandler(app, renderer))
srv.GET("/config", getConfigHandler(app))
Expand Down Expand Up @@ -139,10 +137,6 @@ func addItemHandler(app *App) func(req *air.Request, res *air.Response) error {
return err
}

if wu == nil {
return fmt.Errorf("no item")
}

msg := wu.ToMsg()

if wu.Send {
Expand Down Expand Up @@ -175,10 +169,6 @@ func addMessageHandler(app *App) func(req *air.Request, res *air.Response) error
return err
}

if msg == nil {
return fmt.Errorf("no message")
}

if msg.Id == "" {
msg.Id = uuid.NewString()
}
Expand Down
7 changes: 3 additions & 4 deletions cmd/webclient/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import (
"crypto/tls"
"crypto/x509"
"encoding/hex"
"errors"
"flag"
"fmt"
"math/rand"
Expand Down Expand Up @@ -87,10 +88,8 @@ func NewApp(uid string, callsign string, connectStr string, webPort int, logger
switch parts[2] {
case "tcp":
tlsConn = false
break
case "ssl":
tlsConn = true
break
default:
logger.Errorf("invalid connect string: %s", connectStr)
return nil
Expand Down Expand Up @@ -373,7 +372,7 @@ func main() {

err := viper.ReadInConfig()
if err != nil {
panic(fmt.Errorf("Fatal error config file: %s \n", err))
panic(fmt.Errorf("Fatal error config file: %w \n", err))
}

var cfg zap.Config
Expand Down Expand Up @@ -460,7 +459,7 @@ func main() {
go app.Run(ctx)

if app.ui {
if err := app.g.MainLoop(); err != nil && err != gocui.ErrQuit {
if err := app.g.MainLoop(); err != nil && !errors.Is(err, gocui.ErrQuit) {
app.Logger.Errorf(err.Error())
}
} else {
Expand Down
2 changes: 1 addition & 1 deletion cmd/webclient/main_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import (
func TestMakeUid(t *testing.T) {
c := makeUid("s1")
fmt.Println(c)
assert.Equal(t, 24, len(c))
assert.Len(t, c, 24)
assert.Equal(t, makeUid("string1"), makeUid("string1"))
assert.NotEqual(t, makeUid("s1"), makeUid("s2"))
}
9 changes: 4 additions & 5 deletions cmd/webclient/ui.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package main

import (
"errors"
"fmt"
"github.com/jroimartin/gocui"
"github.com/kdudkov/goatak/pkg/cot"
Expand All @@ -13,13 +14,13 @@ func (app *App) layout(g *gocui.Gui) error {
maxX, maxY := g.Size()

if v, err := g.SetView("info", 0, 0, maxX/2-1, maxY-1); err != nil {
if err != gocui.ErrUnknownView {
if !errors.Is(err, gocui.ErrUnknownView) {
return err
}
v.Frame = true
}
if v, err := g.SetView("log", maxX/2, 0, maxX-1, maxY-1); err != nil {
if err != gocui.ErrUnknownView {
if !errors.Is(err, gocui.ErrUnknownView) {
return err
}
v.Frame = true
Expand All @@ -39,7 +40,7 @@ func (app *App) redraw() {
if app.IsConnected() {
fmt.Fprintf(v, WithColors("Connected to %s:%s as %s\n\n", FgGreen, Bold), app.host, app.tcpPort, app.callsign)
} else {
fmt.Fprintf(v, WithColors("Disconnected\n\n", FgWhite))
fmt.Fprint(v, WithColors("Disconnected\n\n", FgWhite))
}

res := make([]*model.WebUnit, 0)
Expand Down Expand Up @@ -107,11 +108,9 @@ func (app *App) LogMessage(msg *cot.CotMessage) {
extra = "invalid chat message"
}
col = []byte{FgYellow, Bold}
break
case msg.IsChatReceipt():
extra = "chat receipt"
col = []byte{FgYellow, Bold}
break
case strings.HasPrefix(msg.GetType(), "a-"):
extra = msg.GetCallsign()
switch msg.GetType()[2] {
Expand Down
Loading

0 comments on commit 6ef71b6

Please sign in to comment.