CAN_DEVCTL_GET_MFILTER

Get the current message filter

Synopsis:

#include <sys/can_dcmd.h>

#define CAN_DEVCTL_GET_MFILTER   __DIOF(_DCMD_MISC, CAN_CMD_CODE + 2, uint32_t)

Arguments to devctl():

Argument Value
filedes A file descriptor that you obtained by opening the device. This must be for a receive mailbox (e.g., /dev/can1/rx2).
dcmd CAN_DEVCTL_GET_MFILTER
dev_data_ptr A pointer to a uint32_t
n_bytes sizeof(uint32_t)
dev_info_ptr NULL

Description:

This command gets the current message filter, which is a mask that specifies which bits in the message IDs to ignore. The default mask is 0x0, so no bits are ignored.

Input:

None.

Output:

The message filter.

Example:

int      ret;
uint32_t val = 0;

if( (fd = open( "/dev/can1/rx2", O_RDWR)) == -1 )
{
    printf("open of %s failed \n", devname);
    exit(EXIT_FAILURE);
}

if (EOK != (ret = devctl(fd, CAN_DEVCTL_GET_MFILTER, &val, sizeof(val), NULL)))
{
    fprintf(stderr, "devctl CAN_DEVCTL_GET_MFILTER: %s\n", strerror(ret));
} else {
    printf("MFILTER = 0x%X\n", val);
}

See also:

CAN_DEVCTL_SET_MFILTER

devctl() in the QNX Neutrino C Library Reference

canctl in the Utilities Reference