xref: /linux/include/net/can.h (revision 2a31b5378c6db9c4a8d399e5d10d32cd4b732bef)
1 /* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */
2 /*
3  * net/can.h
4  *
5  * Definitions for the CAN network socket buffer extensions
6  *
7  * Copyright (C) 2026 Oliver Hartkopp <socketcan@hartkopp.net>
8  *
9  */
10 
11 #ifndef _NET_CAN_H
12 #define _NET_CAN_H
13 
14 /**
15  * struct can_skb_ext - skb extensions for CAN specific content
16  * @can_iif: ifindex of the first interface the CAN frame appeared on
17  * @can_framelen: cached echo CAN frame length for bql
18  * @can_gw_hops: can-gw CAN frame time-to-live counter
19  * @can_ext_flags: CAN skb extensions flags
20  * @can_skb_uid: CAN skb UID for raw_rcv and isotp echo handling
21  */
22 struct can_skb_ext {
23 	int	can_iif;
24 	u16	can_framelen;
25 	u8	can_gw_hops;
26 	u8	can_ext_flags;
27 	u32	can_skb_uid;
28 };
29 
30 #endif /* _NET_CAN_H */
31