Implement UDP socket diagnostics

Signed-off-by: Sven Rebhan <srebhan@influxdata.com>
This commit is contained in:
Sven Rebhan
2023-11-15 15:50:31 +01:00
committed by Alessandro Boch
parent 8d48f50f55
commit 06219cde3e
5 changed files with 166 additions and 30 deletions

View File

@@ -8,6 +8,7 @@ import (
const (
tcpBBRInfoLen = 20
memInfoLen = 16
)
func checkDeserErr(err error) error {
@@ -351,3 +352,17 @@ func (t *TCPBBRInfo) deserialize(b []byte) error {
return nil
}
func (m *MemInfo) deserialize(b []byte) error {
if len(b) != memInfoLen {
return errors.New("Invalid length")
}
rb := bytes.NewBuffer(b)
m.RMem = native.Uint32(rb.Next(4))
m.WMem = native.Uint32(rb.Next(4))
m.FMem = native.Uint32(rb.Next(4))
m.TMem = native.Uint32(rb.Next(4))
return nil
}