示例#1
0
int main(int argc, char** argv)
{
        int mtd_fd;
        int error;
        mtd_info_t mtd_info;

        if (argc != 2) {
                printf("usage: mtd_probe /dev/mtd[n]\n");
                return 1;
        }

        mtd_fd = open(argv[1], O_RDONLY|O_CLOEXEC);
        if (mtd_fd == -1) {
                perror("open");
                exit(-1);
        }

        error = ioctl(mtd_fd, MEMGETINFO, &mtd_info);
        if (error == -1) {
                perror("ioctl");
                exit(-1);
        }

        probe_smart_media(mtd_fd, &mtd_info);
        return -1;
}
示例#2
0
int main(int argc, char** argv) {
        _cleanup_close_ int mtd_fd = -1;
        mtd_info_t mtd_info;

        if (argc != 2) {
                printf("usage: mtd_probe /dev/mtd[n]\n");
                return EXIT_FAILURE;
        }

        mtd_fd = open(argv[1], O_RDONLY|O_CLOEXEC);
        if (mtd_fd < 0) {
                log_error_errno(errno, "Failed to open: %m");
                return EXIT_FAILURE;
        }

        if (ioctl(mtd_fd, MEMGETINFO, &mtd_info) < 0) {
                log_error_errno(errno, "Failed to issue MEMGETINFO ioctl: %m");
                return EXIT_FAILURE;
        }

        if (probe_smart_media(mtd_fd, &mtd_info) < 0)
                return EXIT_FAILURE;

        return EXIT_SUCCESS;
}