Skip to content
  • Philippe Gerum's avatar
    drivers/can, utils/can: introduce can_ifreq · 5460e09d
    Philippe Gerum authored
    Doing piggyback on struct ifreq for passing arguments to CAN-specific
    control requests is unsafe since nothing relates sizeof(ifr.ifr_ifru)
    to the largest data field we need. Besides, this is prone to type
    aliasing issues when mapping the CAN members over the union space
    using casts, which the compiler may complain about loudly.
    
    Introduce struct can_ifreq, defining all the data fields currently
    supported by CAN raw ioctl requests. The driver still accepts struct
    ifreq from existing applications though, but it is recommended to
    switch to can_ifreq at the first opportunity.
    5460e09d