1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
diff -uNr tapecopy.c
--- tapecopy.c Thu Nov 29 07:53:46 2001
+++ tapecopy.c Thu Jan 17 14:04:09 2002
@@ -32,6 +32,7 @@
static BYTE hdrlbl[] = "\xC8\xC4\xD9"; /* EBCDIC characters "HDR" */
static BYTE eoflbl[] = "\xC5\xD6\xC6"; /* EBCDIC characters "EOF" */
static BYTE eovlbl[] = "\xC5\xD6\xE5"; /* EBCDIC characters "EOV" */
+#ifdef GNU_MTIO_SUPPORT
static struct mt_tape_info tapeinfo[] = MT_TAPE_INFO;
static struct mt_tape_info densinfo[] = {
{0x01, "NRZI (800 bpi)"},
@@ -59,6 +60,7 @@
{0x8C, "EXB-8505 compressed"},
{0x90, "EXB-8205 compressed"},
{0, NULL}};
+#endif
static BYTE buf[65500];
/*-------------------------------------------------------------------*/
@@ -71,6 +73,7 @@
/*-------------------------------------------------------------------*/
static void print_status (BYTE *devname, long stat)
{
+#ifdef GNU_MTIO_SUPPORT
printf ("%s status: %8.8lX", devname, stat);
if (GMT_EOF(stat)) printf (" EOF");
if (GMT_BOT(stat)) printf (" BOT");
@@ -84,6 +87,7 @@
if (GMT_D_800(stat)) printf (" 800");
if (GMT_DR_OPEN(stat)) printf (" NOTAPE");
printf ("\n");
+#endif
} /* end function print_status */
@@ -104,10 +108,12 @@
return -1;
}
+#ifdef GNU_MTIO_SUPPORT
print_status (devname, stblk.mt_gstat);
if (GMT_EOD(stblk.mt_gstat)) return 1;
if (GMT_EOT(stblk.mt_gstat)) return 1;
+#endif
return 0;
} /* end function print_status */
@@ -174,6 +180,7 @@
exit (7);
}
+#ifdef GNU_MTIO_SUPPORT
/* Display tape status information */
for (i = 0; tapeinfo[i].t_type != 0
&& tapeinfo[i].t_type != stblk.mt_type; i++);
@@ -201,6 +208,7 @@
/* Set the tape device to process variable length blocks */
opblk.mt_op = MTSETBLK;
+#endif
opblk.mt_count = 0;
rc = ioctl (devfd, MTIOCTOP, (char*)&opblk);
if (rc < 0)
|