Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/check-go-validation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.24
go-version: 1.24.0
- name: Build
run: go build -v . && go build -v ./...
- name: Test
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM golang:1.18
FROM golang:1.24.0

RUN mkdir /trezord-go
WORKDIR /trezord-go
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
native:
CGO_ENABLED=1 go build $(GOFLAGS)
CGO_ENABLED=1 go build -buildvcs=false $(GOFLAGS)

build-release:
make -C release clean all
10 changes: 8 additions & 2 deletions go.mod
Original file line number Diff line number Diff line change
@@ -1,12 +1,18 @@
module github.com/trezor/trezord-go

go 1.12
go 1.24.0

require (
github.com/BurntSushi/toml v0.3.1 // indirect
github.com/gorilla/csrf v1.7.0
github.com/gorilla/handlers v1.5.1
github.com/gorilla/mux v1.8.0
gopkg.in/natefinch/lumberjack.v2 v2.0.0
)

require (
github.com/BurntSushi/toml v0.3.1 // indirect
github.com/felixge/httpsnoop v1.0.1 // indirect
github.com/gorilla/securecookie v1.1.1 // indirect
github.com/pkg/errors v0.9.1 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
)
1 change: 0 additions & 1 deletion go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ github.com/gorilla/securecookie v1.1.1 h1:miw7JPhV+b/lAHSXz4qd/nN9jRiAFV5FwjeKyC
github.com/gorilla/securecookie v1.1.1/go.mod h1:ra0sb63/xPlUeL+yeDciTfxMRAA+MP+HVt/4epWDjd4=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/natefinch/lumberjack.v2 v2.0.0 h1:1Lc07Kr7qY4U2YPouBjpCLxpiyxIVoxqXgkXLknAOE8=
gopkg.in/natefinch/lumberjack.v2 v2.0.0/go.mod h1:l0ndWWf7gzL7RNwBG7wST/UCcT4T24xpD6X8LsfU/+k=
Expand Down
6 changes: 3 additions & 3 deletions release/linux/Dockerfile.build
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
FROM messense/rust-musl-cross:aarch64-musl AS go-arm64-musl
COPY --from=golang:1.19.1 /usr/local/go/ /usr/local/go/
COPY --from=golang:1.24.0 /usr/local/go/ /usr/local/go/
ENV TREZORD_BUILD=go-arm64-musl

FROM messense/rust-musl-cross:i686-musl AS go-386-musl
COPY --from=golang:1.19.1 /usr/local/go/ /usr/local/go/
COPY --from=golang:1.24.0 /usr/local/go/ /usr/local/go/
ENV TREZORD_BUILD=go-386-musl

FROM messense/rust-musl-cross:x86_64-musl AS go-amd64-musl
COPY --from=golang:1.19.1 /usr/local/go/ /usr/local/go/
COPY --from=golang:1.24.0 /usr/local/go/ /usr/local/go/
ENV TREZORD_BUILD=go-amd64-musl
9 changes: 6 additions & 3 deletions release/macos/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -20,22 +20,25 @@ clean:
-v $(IMPORT_PATH):/trezord \
-w /trezord \
-e CGO_ENABLED=1 \
docker.elastic.co/beats-dev/golang-crossbuild:1.19-darwin-debian10 \
-e GOFLAGS="-buildvcs=false" \
docker.elastic.co/beats-dev/golang-crossbuild:1.24.0-darwin-debian12 \
--build-cmd "go build -o release/macos/build/trezord-amd64 -ldflags=-s" \
-p "darwin/amd64"
docker run --rm \
-v $(IMPORT_PATH):/trezord \
-w /trezord \
-e CGO_ENABLED=1 \
docker.elastic.co/beats-dev/golang-crossbuild:1.19-darwin-arm64-debian10 \
-e GOFLAGS="-buildvcs=false" \
docker.elastic.co/beats-dev/golang-crossbuild:1.24.0-darwin-arm64-debian12 \
--build-cmd "go build -o release/macos/build/trezord-arm64 -ldflags=-s" \
-p "darwin/arm64"
docker run --rm \
-v $(IMPORT_PATH):/trezord \
-w /trezord \
-e CGO_ENABLED=1 \
-e GOFLAGS="-buildvcs=false" \
--entrypoint /trezord/release/macos/build-fat.sh \
docker.elastic.co/beats-dev/golang-crossbuild:1.19-darwin-arm64-debian10
docker.elastic.co/beats-dev/golang-crossbuild:1.24.0-darwin-arm64-debian12
cp ../../VERSION build

.package: .binary .docker-image
Expand Down
6 changes: 4 additions & 2 deletions release/windows/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,17 @@ clean:
-w /trezord \
-e CGO_ENABLED=1 \
-e CGO_CFLAGS="-D_WIN32_WINNT=0x0600" \
docker.elastic.co/beats-dev/golang-crossbuild:1.19-main-debian10 \
-e GOFLAGS="-buildvcs=false" \
docker.elastic.co/beats-dev/golang-crossbuild:1.24.0-main-debian12 \
--build-cmd "go build -o release/windows/build/trezord-64b.exe -ldflags=\"-H=windowsgui\"" \
-p "windows/amd64"
docker run --rm \
-v $(IMPORT_PATH):/trezord \
-w /trezord \
-e CGO_ENABLED=1 \
-e CGO_CFLAGS="-D_WIN32_WINNT=0x0600" \
docker.elastic.co/beats-dev/golang-crossbuild:1.19-main-debian10 \
-e GOFLAGS="-buildvcs=false" \
docker.elastic.co/beats-dev/golang-crossbuild:1.24.0-main-debian12 \
--build-cmd "go build -o release/windows/build/trezord-32b.exe -ldflags=\"-H=windowsgui\"" \
-p "windows/386"
cp ../../VERSION build
Expand Down
4 changes: 2 additions & 2 deletions server/api/api.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package api
import (
"encoding/hex"
"encoding/json"
"io/ioutil"
"io"
"net/http"
"regexp"

Expand Down Expand Up @@ -200,7 +200,7 @@ func (a *api) call(w http.ResponseWriter, r *http.Request, mode core.CallMode, d

var binbody []byte
if mode != core.CallModeRead {
hexbody, err := ioutil.ReadAll(r.Body)
hexbody, err := io.ReadAll(r.Body)
if err != nil {
a.respondError(w, err)
return
Expand Down
31 changes: 5 additions & 26 deletions usb/lowlevel/libusb/libusb.go
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,6 @@ import "C"

import (
"fmt"
"reflect"
"strings"
"unsafe"
)
Expand Down Expand Up @@ -459,11 +458,7 @@ type Interface_Descriptor struct {
}

func (x *Struct_Libusb_Interface_Descriptor) c2go() *Interface_Descriptor {
var list []Struct_Libusb_Endpoint_Descriptor
hdr := (*reflect.SliceHeader)(unsafe.Pointer(&list))
hdr.Cap = int(x.bNumEndpoints)
hdr.Len = int(x.bNumEndpoints)
hdr.Data = uintptr(unsafe.Pointer(x.endpoint))
list := unsafe.Slice((*Struct_Libusb_Endpoint_Descriptor)(unsafe.Pointer(x.endpoint)), int(x.bNumEndpoints))
endpoints := make([]*Endpoint_Descriptor, x.bNumEndpoints)
for i := range endpoints {
endpoints[i] = (&list[i]).c2go()
Expand Down Expand Up @@ -517,11 +512,7 @@ type Interface struct {
}

func (x *Struct_Libusb_Interface) c2go() *Interface {
var list []Struct_Libusb_Interface_Descriptor
hdr := (*reflect.SliceHeader)(unsafe.Pointer(&list))
hdr.Cap = int(x.num_altsetting)
hdr.Len = int(x.num_altsetting)
hdr.Data = uintptr(unsafe.Pointer(x.altsetting))
list := unsafe.Slice((*Struct_Libusb_Interface_Descriptor)(unsafe.Pointer(x.altsetting)), int(x.num_altsetting))
altsetting := make([]*Interface_Descriptor, x.num_altsetting)
for i := range altsetting {
altsetting[i] = (&list[i]).c2go()
Expand Down Expand Up @@ -567,11 +558,7 @@ type Config_Descriptor struct {
}

func (x *Struct_Libusb_Config_Descriptor) c2go() *Config_Descriptor {
var list []Struct_Libusb_Interface
hdr := (*reflect.SliceHeader)(unsafe.Pointer(&list))
hdr.Cap = int(x.bNumInterfaces)
hdr.Len = int(x.bNumInterfaces)
hdr.Data = uintptr(unsafe.Pointer(x._interface))
list := unsafe.Slice((*Struct_Libusb_Interface)(unsafe.Pointer(x._interface)), int(x.bNumInterfaces))
interfaces := make([]*Interface, x.bNumInterfaces)
for i := range interfaces {
interfaces[i] = (&list[i]).c2go()
Expand Down Expand Up @@ -682,12 +669,8 @@ type BOS_Descriptor struct {
}

func (x *Struct_Libusb_BOS_Descriptor) c2go() *BOS_Descriptor {
var list []*Struct_Libusb_BOS_Dev_Capability_Descriptor
x_c := (*C.struct_libusb_bos_descriptor)(x)
hdr := (*reflect.SliceHeader)(unsafe.Pointer(&list))
hdr.Cap = int(x.bNumDeviceCaps)
hdr.Len = int(x.bNumDeviceCaps)
hdr.Data = uintptr(unsafe.Pointer(C.dev_capability_ptr(x_c)))
list := unsafe.Slice((**Struct_Libusb_BOS_Dev_Capability_Descriptor)(unsafe.Pointer(C.dev_capability_ptr(x_c))), int(x.bNumDeviceCaps))
dev_capability := make([]*BOS_Dev_Capability_Descriptor, x.bNumDeviceCaps)
for i := range dev_capability {
dev_capability[i] = list[i].c2go()
Expand Down Expand Up @@ -994,11 +977,7 @@ func Get_Device_List(ctx Context) ([]Device, error) {
return nil, &libusb_error{rc}
}
// turn the c array into a slice of device pointers
var list []Device
hdr := (*reflect.SliceHeader)(unsafe.Pointer(&list))
hdr.Cap = rc
hdr.Len = rc
hdr.Data = uintptr(unsafe.Pointer(hdl))
list := unsafe.Slice((*Device)(unsafe.Pointer(hdl)), rc)
return list, nil
}

Expand Down
Loading