| #include <stdlib.h> |
| #include <stdio.h> |
| #include <string.h> |
| #include <sys/ioctl.h> |
| #include <fcntl.h> |
| #include <getopt.h> |
| #include "mtr_ioctl.h" |
| |
| int SetMtrEntry(struct mtr_args *opt, unsigned int cmd) |
| { |
| int fd; |
| |
| fd = open("/dev/"MTR_DEVNAME, O_RDONLY); |
| if (fd < 0) |
| { |
| printf("Open %s pseudo device failed\n","/dev/"MTR_DEVNAME); |
| return MTR_FAIL; |
| } |
| |
| if(ioctl(fd, cmd, opt)<0) { |
| printf("MTR_API: ioctl error\n"); |
| close(fd); |
| return MTR_FAIL; |
| } |
| |
| close(fd); |
| return MTR_SUCCESS; |
| } |
| |
| int MtrGetAllEntries(struct mtr_list_args *opt) |
| { |
| int fd=0; |
| |
| fd = open("/dev/"MTR_DEVNAME, O_RDONLY); |
| if (fd < 0) |
| { |
| printf("Open %s pseudo device failed\n","/dev/"MTR_DEVNAME); |
| return MTR_FAIL; |
| } |
| |
| if(ioctl(fd, MTR_GET_ALL_ENTRIES, opt)<0) { |
| printf("MTR_API: ioctl error\n"); |
| close(fd); |
| return MTR_FAIL; |
| } |
| |
| close(fd); |
| |
| return MTR_SUCCESS; |
| |
| } |
| |