11 #define write faketape_write
12 #define open faketape_open
13 #define read faketape_read
14 #define close faketape_close
15 #define ioctl faketape_ioctl
22 ioctl(fd, MTIOCGET, &mt_get);
23 printf("file:block %i:%i\n", mt_get.mt_fileno, mt_get.mt_blkno);
32 fd = open("/dev/lto2", O_CREAT | O_RDWR, 0700);
34 perror("Can't open fd");
41 r1 = ioctl(fd, MTIOCTOP, &mt_com);
46 write(fd, "abcdefghijklmnopqrstuvwyz", strlen("abcdefghijklmnopqrstuvwyz")+1);
47 write(fd, "abcdefghijklmnopqrstuvwyz", strlen("abcdefghijklmnopqrstuvwyz")+1);
48 write(fd, "abcdefghijklmnopqrstuvwyz", strlen("abcdefghijklmnopqrstuvwyz")+1);
49 printf("write something (3 writes)\n");
54 mt_com.mt_op = MTWEOF;
56 r1 = ioctl(fd, MTIOCTOP, &mt_com);
59 /* write a second file */
60 write(fd, "abcdefghijklmnopqrstuvwyz", strlen("abcdefghijklmnopqrstuvwyz")+1);
61 printf("write something\n");
67 r1 = ioctl(fd, MTIOCTOP, &mt_com);
70 /* read something with error */
74 printf("read c=%s len=%i errno=%i\n", c, r1, errno);
80 r1 = read(fd, c, 200);
82 printf("read c=%s len=%i\n", c, r1);
86 printf("write something\n");
87 write(fd, "abcdefghijklmnopqrstuvwyz", strlen("abcdefghijklmnopqrstuvwyz")+1);
93 r1 = ioctl(fd, MTIOCTOP, &mt_com);
94 r1 = read(fd, c, 200);
96 printf("read c=%s len=%i\n", c, r1);
97 r1 = read(fd, c, 200);
99 printf("read c=%s len=%i\n", c, r1);
103 mt_com.mt_op = MTWEOF;
105 r1 = ioctl(fd, MTIOCTOP, &mt_com);
109 mt_com.mt_op = MTFSF;
111 r1 = ioctl(fd, MTIOCTOP, &mt_com);
112 printf("fsf r=%i\n", r1);
115 /* write something */
116 printf("write something\n");
117 write(fd, "abcdefghijklmnopqrstuvwyz", strlen("abcdefghijklmnopqrstuvwyz")+1);
121 mt_com.mt_op = MTFSF;
123 r1 = ioctl(fd, MTIOCTOP, &mt_com);
124 printf("fsf r=%i\n", r1);
128 mt_com.mt_op = MTWEOF;
130 r1 = ioctl(fd, MTIOCTOP, &mt_com);
131 printf("weof 3 r=%i\n", r1);
136 mt_com.mt_op = MTREW;
137 r1 = ioctl(fd, MTIOCTOP, &mt_com);
142 mt_com.mt_op = MTFSR;
143 mt_com.mt_count = 10;
144 r1 = ioctl(fd, MTIOCTOP, &mt_com);
145 printf("fsr r=%i\n", r1);
150 mt_com.mt_op = MTEOM;
151 r1 = ioctl(fd, MTIOCTOP, &mt_com);
152 printf("goto eom\n");
155 /* write something */
156 printf("write something\n");
157 write(fd, "abcdefghijklmnopqrstuvwyz", strlen("abcdefghijklmnopqrstuvwyz")+1);