]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/patches/testing/t.c
ebl get a patch for faketape + bacula 2.2
[bacula/bacula] / bacula / patches / testing / t.c
index 623a9e4a0bd9f5f02f7ee5322bab24fe73003802..f15a146b5462a729af48437f0dba05a97bf740b0 100644 (file)
@@ -41,7 +41,7 @@ int main(int argc, char **argv)
       debug(atoi(argv[1]));
    }
 
-   fd  = open("/dev/lto2", O_CREAT | O_RDWR, 0700);
+   fd  = open("/dev/lto2", O_CREAT | O_RDWR);
    if (fd < 0) {
       perror("Can't open fd");
       exit(1);
@@ -56,6 +56,50 @@ int main(int argc, char **argv)
    r1 = ioctl(fd, MTIOCTOP, &mt_com);
    print_pos();
 
+   /* read something */
+   errno=0;
+   r1 = read(fd, c, 200);
+   c[r1] = 0;
+   printf("\n*** read c=%s len=%i\n", c, r1);
+   print_pos();
+
+   /* read something */
+   errno=0;
+   r1 = read(fd, c, 200);
+   c[r1] = 0;
+   printf("\n*** read c=%s len=%i\n", c, r1);
+   print_pos();
+
+   /* read something */
+   errno=0;
+   r1 = read(fd, c, 200);
+   c[r1] = 0;
+   printf("\n*** read c=%s len=%i\n", c, r1);
+   print_pos();
+
+   /* read something */
+   errno=0;
+   r1 = read(fd, c, 200);
+   c[r1] = 0;
+   printf("\n*** read c=%s len=%i\n", c, r1);
+   print_pos();
+
+   /* read something */
+   errno=0;
+   r1 = read(fd, c, 200);
+   c[r1] = 0;
+   printf("\n*** read c=%s len=%i\n", c, r1);
+   print_pos();
+
+   /* read something */
+   errno=0;
+   r1 = read(fd, c, 200);
+   c[r1] = 0;
+   printf("\n*** read c=%s len=%i\n", c, r1);
+   print_pos();
+
+   exit(0);
+
    /* write something */
    printf("\n*** write something (3 writes)\n");
    write(fd, "abcdefghijklmnopqrstuvwyz", strlen("abcdefghijklmnopqrstuvwyz")+1);
@@ -70,11 +114,97 @@ int main(int argc, char **argv)
    r1 = ioctl(fd, MTIOCTOP, &mt_com);
    print_pos();
 
+   write(fd, "12345", strlen("12345")+1);
+   write(fd, "678910", strlen("678910")+1);
+
+   /* write EOF */
+   printf("\n*** WEOF\n");
+   mt_com.mt_op = MTWEOF;
+   mt_com.mt_count = 1;
+   r1 = ioctl(fd, MTIOCTOP, &mt_com);
+   print_pos();
+
+   
+
+   /* BSF */
+   printf("\n*** bsf\n");
+   mt_com.mt_count = 1;
+   mt_com.mt_op = MTBSF;
+   r1 = ioctl(fd, MTIOCTOP, &mt_com);
+   print_pos();
+
+   /* BSR */
+   printf("\n*** bsr\n");
+   mt_com.mt_count = 1;
+   mt_com.mt_op = MTBSR;
+   r1 = ioctl(fd, MTIOCTOP, &mt_com);
+   print_pos();
+
+   /* read something */
+   errno=0;
+   r1 = read(fd, c, 200);
+   c[r1] = 0;
+   printf("\n*** read c=%s len=%i\n", c, r1);
+   print_pos();
+
+   /* read something */
+   errno=0;
+   r1 = read(fd, c, 200);
+   c[r1] = 0;
+   printf("\n*** read c=%s len=%i\n", c, r1);
+   print_pos();
+   exit(0);
+
+   /* FSR */
+   printf("\n*** fsr");
+   mt_com.mt_op = MTFSR;
+   mt_com.mt_count = 1;
+   r1 = ioctl(fd, MTIOCTOP, &mt_com);
+   printf(" r=%i\n", r1);
+   print_pos();
+   /* FSR */
+   printf("\n*** fsr");
+   mt_com.mt_op = MTFSR;
+   mt_com.mt_count = 1;
+   r1 = ioctl(fd, MTIOCTOP, &mt_com);
+   printf(" r=%i\n", r1);
+   print_pos();
+   /* FSR */
+   printf("\n*** fsr");
+   mt_com.mt_op = MTFSR;
+   mt_com.mt_count = 1;
+   r1 = ioctl(fd, MTIOCTOP, &mt_com);
+   printf(" r=%i\n", r1);
+   print_pos();
+   /* FSR */
+   printf("\n*** fsr");
+   mt_com.mt_op = MTFSR;
+   mt_com.mt_count = 1;
+   r1 = ioctl(fd, MTIOCTOP, &mt_com);
+   printf(" r=%i\n", r1);
+   print_pos();
+   /* FSR */
+   printf("\n*** fsr");
+   mt_com.mt_op = MTFSR;
+   mt_com.mt_count = 1;
+   r1 = ioctl(fd, MTIOCTOP, &mt_com);
+   printf(" r=%i\n", r1);
+   print_pos();
+   exit(0);
+
+
    /* write a second file */
    printf("\n*** write something\n");
    write(fd, "abcdefghijklmnopqrstuvwyz", strlen("abcdefghijklmnopqrstuvwyz")+1);
    print_pos();
 
+    /* BSF */
+   printf("\n*** bsf\n");
+   mt_com.mt_op = MTBSF;
+   mt_com.mt_count = 1;
+   r1 = ioctl(fd, MTIOCTOP, &mt_com);
+   print_pos();
+   
    /* rewind */
    printf("\n*** rewind\n");
    mt_com.mt_count = 1;