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