mirror of
https://github.com/ioacademy-jikim/debugging
synced 2025-06-08 08:26:14 +00:00
47 lines
1.5 KiB
C
47 lines
1.5 KiB
C
/* 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;
|
|
}
|