@@ -96,22 +96,22 @@ func (n *PktmonDropNotify) decodePktmonDrop(data []byte) error {
9696 if l := len (data ); l < dropNotifyV1Len {
9797 return fmt .Errorf ("%w: expected at least %d but got %d" , errUnexpectedDropNotifyLength , dropNotifyV1Len , l )
9898 }
99- version := byteorder .Native .Uint16 (data [1 : 3 ])
99+ version := byteorder .Native .Uint16 (data [2 : 4 ])
100100
101101 // Check against max version.
102102 if version > DropNotifyVersion1 {
103103 return fmt .Errorf ("%w: Unrecognized pktmon drop event version %d\n Raw data bytes: %v\n Type: %d\n Version (bytes 1-2): %v (uint16: %d)\n SubType: %d\n Source (bytes 4-5): %v (uint16: %d)\n Hash (bytes 6-9): %v (uint32: %d)\n OrigLen (bytes 10-13): %v (uint32: %d)\n CapLen (bytes 14-15): %v (uint16: %d)\n SrcLabel (bytes 16-19): %v (uint32: %d)\n DstLabel (bytes 20-23): %v (uint32: %d)\n DstID (bytes 24-27): %v (uint32: %d)\n Line (bytes 28-29): %v (uint16: %d)\n File (byte 30): %d\n ExtError (byte 31): %d\n Ifindex (bytes 32-35): %v (uint32: %d)" ,
104104 errInvalidDropNotifyVersion , version ,
105105 data ,
106106 data [0 ],
107- data [1 : 3 ], version ,
108- data [3 ],
109- data [4 : 6 ], byteorder .Native .Uint16 (data [4 : 6 ]),
110- data [6 : 10 ], byteorder .Native .Uint32 (data [6 : 10 ]),
111- data [10 : 14 ], byteorder .Native .Uint32 (data [10 : 14 ]),
112- data [14 : 16 ], byteorder .Native .Uint16 (data [14 : 16 ]),
113- data [16 : 20 ], byteorder .Native .Uint32 (data [16 : 20 ]),
114- data [20 : 24 ], byteorder .Native .Uint32 (data [20 : 24 ]),
107+ data [2 : 4 ], version ,
108+ data [4 ],
109+ data [6 : 8 ], byteorder .Native .Uint16 (data [6 : 8 ]),
110+ data [8 : 12 ], byteorder .Native .Uint32 (data [8 : 12 ]),
111+ data [12 : 16 ], byteorder .Native .Uint32 (data [12 : 16 ]),
112+ data [16 : 18 ], byteorder .Native .Uint16 (data [16 : 18 ]),
113+ data [18 : 22 ], byteorder .Native .Uint32 (data [18 : 22 ]),
114+ data [22 : 26 ], byteorder .Native .Uint32 (data [22 : 26 ]),
115115 data [24 :28 ], byteorder .Native .Uint32 (data [24 :28 ]),
116116 data [28 :30 ], byteorder .Native .Uint16 (data [28 :30 ]),
117117 data [30 ],
@@ -122,11 +122,11 @@ func (n *PktmonDropNotify) decodePktmonDrop(data []byte) error {
122122
123123 // Decode logic for version >= v0/v1.
124124 n .Type = data [0 ]
125- n .SubType = data [3 ]
126- n .Source = byteorder .Native .Uint16 (data [4 : 6 ])
127- n .Hash = byteorder .Native .Uint32 (data [6 : 10 ])
128- n .OrigLen = byteorder .Native .Uint32 (data [10 : 14 ])
129- n .CapLen = byteorder .Native .Uint16 (data [14 : 16 ])
125+ n .SubType = data [4 ]
126+ n .Source = byteorder .Native .Uint16 (data [6 : 8 ])
127+ n .Hash = byteorder .Native .Uint32 (data [8 : 12 ])
128+ n .OrigLen = byteorder .Native .Uint32 (data [12 : 16 ])
129+ n .CapLen = byteorder .Native .Uint16 (data [16 : 18 ])
130130 n .Version = version
131131 n .SrcLabel = identity .NumericIdentity (byteorder .Native .Uint32 (data [16 :20 ]))
132132 n .DstLabel = identity .NumericIdentity (byteorder .Native .Uint32 (data [20 :24 ]))
0 commit comments