/* Tests Valgrind moans about unknown ioctl. 10 unique moans should be produced. */ #include <sys/ioctl.h> /* An ioctl request for a strange ioctl device driver. The choice of values here needs to match the logic in ML_(PRE_unknown_ioctl) and take into account that _IOC_NONE is not == 0 everywhere. */ # if defined(VGO_linux) #define IOCTL_REQUEST_BASE (0x12345670 | _IOC(_IOC_NONE,0,0,0)) # else #define IOCTL_REQUEST_BASE 0x12345670 # endif int main(int argc, const char *argv[]) { ioctl(-1, IOCTL_REQUEST_BASE + 0x0); ioctl(-1, IOCTL_REQUEST_BASE + 0x1); ioctl(-1, IOCTL_REQUEST_BASE + 0x0); ioctl(-1, IOCTL_REQUEST_BASE + 0x2); ioctl(-1, IOCTL_REQUEST_BASE + 0x3); ioctl(-1, IOCTL_REQUEST_BASE + 0x4); ioctl(-1, IOCTL_REQUEST_BASE + 0x1); ioctl(-1, IOCTL_REQUEST_BASE + 0x5); ioctl(-1, IOCTL_REQUEST_BASE + 0x5); ioctl(-1, IOCTL_REQUEST_BASE + 0x1); ioctl(-1, IOCTL_REQUEST_BASE + 0x6); ioctl(-1, IOCTL_REQUEST_BASE + 0x7); ioctl(-1, IOCTL_REQUEST_BASE + 0x8); ioctl(-1, IOCTL_REQUEST_BASE + 0x1); ioctl(-1, IOCTL_REQUEST_BASE + 0x9); ioctl(-1, IOCTL_REQUEST_BASE + 0x1); ioctl(-1, IOCTL_REQUEST_BASE + 0x0); ioctl(-1, IOCTL_REQUEST_BASE + 0xa); ioctl(-1, IOCTL_REQUEST_BASE + 0xb); ioctl(-1, IOCTL_REQUEST_BASE + 0xc); ioctl(-1, IOCTL_REQUEST_BASE + 0xd); ioctl(-1, IOCTL_REQUEST_BASE + 0x1); ioctl(-1, IOCTL_REQUEST_BASE + 0xe); ioctl(-1, IOCTL_REQUEST_BASE + 0x0); ioctl(-1, IOCTL_REQUEST_BASE + 0xf); return 0; }