Skip to content

Commit

Permalink
Use native endianness when encoding InetDiagMsg (prometheus#2508)
Browse files Browse the repository at this point in the history
Note however that the InetDiagMsg struct contains a InetDiagSockID
member, which itself contains some members which are explicitly
specified as big-endian in Linux kernel source:

struct inet_diag_sockid {
	__be16	idiag_sport;
	__be16	idiag_dport;
	__be32	idiag_src[4];
	__be32	idiag_dst[4];
	__u32	idiag_if;
	__u32	idiag_cookie[2];
};

node_exporter currently does not use these members for anything, so this
is acceptable (for now).

Signed-off-by: Daniel Swarbrick <daniel.swarbrick@gmail.com>
  • Loading branch information
dswarbrick authored and oblitorum committed Apr 9, 2024
1 parent 679fa55 commit c5c5362
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 2 deletions.
3 changes: 2 additions & 1 deletion collector/tcpstat_linux_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,14 @@ import (
"syscall"
"testing"

"github.com/josharian/native"
"github.com/mdlayher/netlink"
)

func Test_parseTCPStats(t *testing.T) {
encode := func(m InetDiagMsg) []byte {
var buf bytes.Buffer
err := binary.Write(&buf, binary.LittleEndian, m)
err := binary.Write(&buf, native.Endian, m)
if err != nil {
panic(err)
}
Expand Down
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ require (
github.com/hashicorp/go-envparse v0.0.0-20200406174449-d9cfd743a15e
github.com/hodgesds/perf-utils v0.5.1
github.com/illumos/go-kstat v0.0.0-20210513183136-173c9b0a9973
github.com/josharian/native v1.0.0
github.com/jsimonetti/rtnetlink v1.2.2
github.com/lufia/iostat v1.2.1
github.com/mattn/go-xmlrpc v0.0.3
Expand Down Expand Up @@ -40,7 +41,6 @@ require (
github.com/go-logfmt/logfmt v0.5.1 // indirect
github.com/golang/protobuf v1.5.2 // indirect
github.com/google/go-cmp v0.5.9 // indirect
github.com/josharian/native v1.0.0 // indirect
github.com/jpillora/backoff v1.0.0 // indirect
github.com/matttproud/golang_protobuf_extensions v1.0.1 // indirect
github.com/mdlayher/genetlink v1.2.0 // indirect
Expand Down

0 comments on commit c5c5362

Please sign in to comment.