vcan_ioctl_cmd ============== Here is the definition:: typedef enum { VCAN_IOCTL_CAN=0, VCAN_IOCTL_SETNAME=1, VCAN_IOCTL_IDENTIFY=2, VCAN_IOCTL_VERSION=3 } vcan_ioctl_cmd; This is the data type for all ioctl-commands that can be performed by the driver. The 'command' parameter of the ``ioctl``-function has to have a value according to ``vcan_ioctl_cmd``. The driver-function is selected according to the value of that 'command' parameter. VCAN_IOCTL_CAN This constant specifies that a CAN-status function is to be performed. See also ``vcan_status_tag``. VCAN_IOCTL_SETNAME This constant is used to call the set-name function of the driver. A name is assigned to the thread that calls this function. If the thread later crashed without closing the driver, that name can be used to get the appropriate file-handle to the driver back. The name is a string that is given to the ioctl-function as data-pointer. VCAN_IOCTL_IDENTIFY This constant is used to call the identify- function of the driver. The driver looks up it's internal list of thread-names and assigns the file-handle to the objects that are or were used by the thread that was registered with that name. The name is a string that is given to the ioctl-function as data-pointer. VCAN_IOCTL_VERSION This constant is used to call the version- function of the driver. The major- and minor version numbers are returned in the data-field of the ioctl-function. This data-field is always a pointer, to the address 'pointer' and 'pointer+1' the driver's major version number is written as a short-integer. The driver's minor version number is written to 'pointer+2' and 'pointer+3' as a short-integer.