]> git.pld-linux.org Git - packages/cpio.git/commitdiff
- updated to 2.5
authorJakub Bogusz <qboosh@pld-linux.org>
Sun, 1 Sep 2002 01:51:46 +0000 (01:51 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
- removed obsolete patches: glibc,glibc21,longlongdev,emptylink,debian36,bug56346
- updated freebsd and DESTDIR patches
- added es,hu,ja man pages

Changed files:
    cpio-bug56346.patch -> 1.2
    cpio-debian36.patch -> 1.2

cpio-bug56346.patch [deleted file]
cpio-debian36.patch [deleted file]

diff --git a/cpio-bug56346.patch b/cpio-bug56346.patch
deleted file mode 100644 (file)
index 1b0ab4f..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-diff -Naur cpio-2.4.2.orig/copyin.c cpio-2.4.2/copyin.c
---- cpio-2.4.2.orig/copyin.c   Wed Aug  8 17:55:32 2001
-+++ cpio-2.4.2/copyin.c        Wed Aug  8 18:02:04 2001
-@@ -34,6 +34,7 @@
- static void defer_copyin ();
- static void create_defered_links ();
- static void create_final_defers ();
-+static struct deferment *remove_last_defered_link ();
- /* Return 16-bit integer I with the bytes swapped.  */
- #define swab_short(i) ((((i) << 8) & 0xff00) | (((i) >> 8) & 0x00ff))
-@@ -513,6 +514,28 @@
-           }
-       }
-+      if (skip_file && file_hdr.c_nlink > 1 && (archive_format == arf_newascii
-+        || archive_format == arf_crcascii) && file_hdr.c_filesize > 0)
-+      {
-+        /* see if we have a defered link for this file, and if so,
-+           use it to instantiate this file */
-+        struct deferment *defered_header;
-+
-+        defered_header = remove_last_defered_link(&file_hdr);
-+        if (defered_header)
-+          {
-+            /* restore the old file header (name only!) */
-+            
-+            free(file_hdr.c_name);
-+            file_hdr.c_name = (char *)
-+              xmalloc(strlen(defered_header->header.c_name) + 1);
-+            strcpy(file_hdr.c_name, defered_header->header.c_name);
-+            free_deferment(defered_header);
-+            
-+            skip_file = FALSE;
-+          }
-+      }
-+
-       if (skip_file)
-       {
-         tape_toss_input (in_file_des, file_hdr.c_filesize);
-@@ -1284,6 +1307,58 @@
-         d = d->next;
-       }
-     }
-+}
-+
-+/* We're about to skip a file that was not selected to be
-+   copied in by whatever patterns were supplied. However,
-+   this file is multiply linked, and we want to check to see
-+   if we are supposed to copy in any of its links. If we find
-+   one, remove it from the list and return it. I could also
-+   probably return the first header found... */
-+
-+static struct deferment * 
-+remove_last_defered_link (file_hdr)
-+  struct new_cpio_header *file_hdr;
-+{
-+  struct deferment *d, *d_prev, *d_last, *d_last_prev;
-+  int ino;
-+  int         maj;
-+  int   min;
-+
-+  ino = file_hdr->c_ino;
-+  maj = file_hdr->c_dev_maj;
-+  min = file_hdr->c_dev_min;
-+  d = deferments;
-+
-+  d_last = NULL;
-+  d_prev = NULL;
-+
-+  while (d != NULL)
-+    {
-+      if ( (d->header.c_ino == ino) && (d->header.c_dev_maj == maj)
-+        && (d->header.c_dev_min == min) )
-+      {
-+        d_last = d;
-+        d_last_prev = d_prev;
-+      }
-+
-+      d_prev = d;
-+      d = d->next;
-+    }
-+
-+  if (d_last)
-+    {
-+      if (d_last_prev == NULL)
-+      {
-+        deferments = d_last->next;
-+      }
-+      else
-+      {
-+        d_last_prev->next = d_last->next;
-+      }
-+    }
-+
-+  return d_last;
- }
- /* If we had a multiply linked file that really was empty then we would
diff --git a/cpio-debian36.patch b/cpio-debian36.patch
deleted file mode 100644 (file)
index 6e6324b..0000000
+++ /dev/null
@@ -1,2345 +0,0 @@
---- cpio-2.4.2/copyin.c.debian Tue Jun 26 13:51:18 2001
-+++ cpio-2.4.2/copyin.c        Tue Jun 26 13:55:21 2001
-@@ -29,6 +29,10 @@
- #include <fnmatch.h>
- #endif
-+/* Debian hack to fix a bug in the --sparse option.  This bug has been
-+   reported to "bug-gnu-utils@prep.ai.mit.edu".  (96/7/10) -BEM */
-+extern int delayed_seek_count;
-+
- static void read_pattern_file ();
- static void tape_skip_padding ();
- static void defer_copyin ();
-@@ -490,12 +494,13 @@
-           }
-         else
-           {
--            char *non_abs_name;
--
--            non_abs_name = (char *) xmalloc (strlen (p) + 1);
--            strcpy (non_abs_name, p);
--            free (file_hdr.c_name);
--            file_hdr.c_name = non_abs_name;
-+              /* Debian hack: file_hrd.c_name is sometimes set to
-+                 point to static memory by code in tar.c.  This
-+                 causes a segfault.  Therefore, memmove is used
-+                 instead of freeing and reallocating.  (Reported by
-+                 Horst Knobloch.)  This bug has been reported to
-+                 "bug-gnu-utils@prep.ai.mit.edu". (99/1/6) -BEM */
-+            (void)memmove (file_hdr.c_name, p, (size_t)(strlen (p) + 1));
-           }
-       }
-@@ -546,7 +551,11 @@
-               long_format (&file_hdr, (char *) 0);
-           }
-         else
--          printf ("%s\n", file_hdr.c_name);
-+          /* Debian hack: Modified to print a list of filenames
-+               terminiated by a null character when the -t and -0
-+               flags are used.  This has been submitted as a
-+               suggestion to "bug-gnu-utils@prep.ai.mit.edu".  -BEM */
-+          printf ("%s%c", file_hdr.c_name, name_end);
-         crc = 0;
-         tape_toss_input (in_file_des, file_hdr.c_filesize);
-@@ -586,6 +595,12 @@
-           if (crc != file_hdr.c_chksum)
-             error (0, 0, "%s: checksum error (0x%x, should be 0x%x)",
-                    file_hdr.c_name, crc, file_hdr.c_chksum);
-+         /* Debian hack: -v and -V now work with --only-verify-crc.
-+            (99/11/10) -BEM */
-+          if (verbose_flag)
-+            fprintf (stderr, "%s\n", file_hdr.c_name);
-+          if (dot_flag)
-+            fputc ('.', stderr);
-       }
-       else
-       {
-@@ -611,7 +626,28 @@
-                 continue;
-               }
-             else
--              file_hdr.c_name = xstrdup (new_name.ds_string);
-+              /* Debian hack: file_hrd.c_name is sometimes set to
-+                 point to static memory by code in tar.c.  This
-+                 causes a segfault.  This has been fixed and an
-+                 additional check to ensure that the file name
-+                 is not too long has been added.  (Reported by
-+                 Horst Knobloch.)  This bug has been reported to
-+                 "bug-gnu-utils@prep.ai.mit.edu". (99/1/6) -BEM */
-+              {
-+                if (archive_format != arf_tar && archive_format != arf_ustar)
-+                  {
-+                    free (file_hdr.c_name);
-+                    file_hdr.c_name = xstrdup (new_name.ds_string);
-+                  }
-+                else
-+                  {
-+                    if (is_tar_filename_too_long (new_name.ds_string))
-+                      error (0, 0, "%s: file name too long",
-+                             new_name.ds_string);
-+                    else
-+                      strcpy (file_hdr.c_name, new_name.ds_string);
-+                  }
-+              }
-           }
-         /* See if the file already exists.  */
-@@ -682,8 +718,10 @@
-                    but GNU cpio version 2.0-2.2 didn't do that, so we
-                    still have to check for links here (and also in case
-                    the archive was created and later appeneded to). */
-+                /* Debian hack: (97/1/2) This was reported by Ronald
-+                   F. Guilmette to the upstream maintainers. -BEM */
-                 link_res = link_to_maj_min_ino (file_hdr.c_name, 
--                              file_hdr.c_dev_maj, file_hdr.c_dev_maj,
-+                              file_hdr.c_dev_maj, file_hdr.c_dev_min,
-                               file_hdr.c_ino);
-                 if (link_res == 0)
-                   {
-@@ -696,8 +734,10 @@
-                 && archive_format != arf_ustar)
-               {
-                 int link_res;
-+                /* Debian hack: (97/1/2) This was reported by Ronald
-+                   F. Guilmette to the upstream maintainers. -BEM */
-                 link_res = link_to_maj_min_ino (file_hdr.c_name, 
--                              file_hdr.c_dev_maj, file_hdr.c_dev_maj,
-+                              file_hdr.c_dev_maj, file_hdr.c_dev_min,
-                               file_hdr.c_ino);
-                 if (link_res == 0)
-                   {
-@@ -761,6 +801,15 @@
-                   }
-                 copy_files_tape_to_disk (in_file_des, out_file_des, file_hdr.c_filesize);
-                 disk_empty_output_buffer (out_file_des);
-+                /* Debian hack to fix a bug in the --sparse option.
-+                     This bug has been reported to
-+                     "bug-gnu-utils@prep.ai.mit.edu".  (96/7/10) -BEM */
-+                if (delayed_seek_count > 0)
-+                  {
-+                    lseek (out_file_des, delayed_seek_count-1, SEEK_CUR);
-+                    write (out_file_des, "", 1);
-+                    delayed_seek_count = 0;
-+                  }
-                 if (close (out_file_des) < 0)
-                   error (0, errno, "%s", file_hdr.c_name);
-@@ -890,8 +939,11 @@
-                 && archive_format != arf_ustar)
-               {
-                 int link_res;
-+                  /* Debian hack:  This was reported by Horst
-+                     Knobloch. This bug has been reported to
-+                     "bug-gnu-utils@prep.ai.mit.edu". (99/1/6) -BEM */
-                 link_res = link_to_maj_min_ino (file_hdr.c_name, 
--                              file_hdr.c_dev_maj, file_hdr.c_dev_maj,
-+                              file_hdr.c_dev_maj, file_hdr.c_dev_min,
-                               file_hdr.c_ino);
-                 if (link_res == 0)
-                   break;
-@@ -1305,7 +1357,7 @@
-   for (d = deferments; d != NULL; d = d->next)
-     {
-       link_res = link_to_maj_min_ino (d->header.c_name, 
--                  d->header.c_dev_maj, d->header.c_dev_maj,
-+                  d->header.c_dev_maj, d->header.c_dev_min,
-                   d->header.c_ino);
-       if (link_res == 0)
-       {
---- cpio-2.4.2/copyout.c.debian        Tue Jun 26 13:51:18 2001
-+++ cpio-2.4.2/copyout.c       Tue Jun 26 13:57:04 2001
-@@ -35,6 +35,7 @@
- static void writeout_other_defers ();
- static void writeout_final_defers();
- static void writeout_defered_file ();
-+static void check_for_changed_file ();
- /* Write out header FILE_HDR, including the file name, to file
-    descriptor OUT_DES.  */
-@@ -112,11 +113,11 @@
-       error (0, 0, "%s: truncating inode number", file_hdr->c_name);
-       sprintf (ascii_header,
--             "%06o%06o%06lo%06lo%06lo%06lo%06lo%06o%011lo%06lo%011lo",
--             file_hdr->c_magic & 0xFFFF, (int)(dev & 0xFFFF),
-+             "%06ho%06lo%06lo%06lo%06lo%06lo%06lo%06o%011lo%06lo%011lo",
-+             file_hdr->c_magic & 0xFFFF, (long)(dev & 0xFFFF),
-              file_hdr->c_ino & 0xFFFF, file_hdr->c_mode & 0xFFFF,
-              file_hdr->c_uid & 0xFFFF, file_hdr->c_gid & 0xFFFF,
--             file_hdr->c_nlink & 0xFFFF, (int)(rdev & 0xFFFF),
-+             file_hdr->c_nlink & 0xFFFF, (long)(rdev & 0xFFFF),
-              file_hdr->c_mtime, file_hdr->c_namesize & 0xFFFF,
-              file_hdr->c_filesize);
-       tape_buffered_write (ascii_header, out_des, 76L);
-@@ -384,6 +385,7 @@
-             write_out_header (&file_hdr, out_file_des);
-             copy_files_disk_to_tape (in_file_des, out_file_des, file_hdr.c_filesize, input_name.ds_string);
-+            check_for_changed_file(input_name.ds_string, &file_hdr);
- #ifndef __MSDOS__
-             if (archive_format == arf_tar || archive_format == arf_ustar)
-@@ -399,7 +401,13 @@
-               {
-                 times.actime = file_stat.st_atime;
-                 times.modtime = file_stat.st_mtime;
--                if (utime (file_hdr.c_name, &times) < 0)
-+                /* Debian hack: Silently ignore EROFS because
-+                     reading the file won't have upset its timestamp
-+                     if it's on a read-only filesystem.  This has been
-+                     submitted as a suggestion to
-+                     "bug-gnu-utils@prep.ai.mit.edu".  -BEM */
-+                if (utime (file_hdr.c_name, &times) < 0
-+                    && errno != EROFS)
-                   error (0, errno, "%s", file_hdr.c_name);
-               }
-             break;
-@@ -562,6 +570,8 @@
-       error (1, errno, "cannot read checksum for %s", file_name);
-       if (bytes_read == 0)
-       break;
-+      if (bytes_left < bytes_read)
-+        bytes_read = bytes_left;
-       for (i = 0; i < bytes_read; ++i)
-       crc += buf[i] & 0xff;
-     }
-@@ -785,6 +795,7 @@
-   write_out_header (&file_hdr, out_file_des);
-   copy_files_disk_to_tape (in_file_des, out_file_des, file_hdr.c_filesize, header->c_name);
-+  check_for_changed_file(header->c_name, &file_hdr);
- #ifndef __MSDOS__
-   if (archive_format == arf_tar || archive_format == arf_ustar)
-@@ -800,8 +811,33 @@
-     {
-       times.actime = file_hdr.c_mtime;
-       times.modtime = file_hdr.c_mtime;
--      if (utime (file_hdr.c_name, &times) < 0)
-+      /* Debian hack: Silently ignore EROFS because reading the file
-+         won't have upset its timestamp if it's on a read-only
-+         filesystem.  This has been submitted as a suggestion to
-+         "bug-gnu-utils@prep.ai.mit.edu".  -BEM */
-+      if (utime (file_hdr.c_name, &times) < 0
-+        && errno != EROFS)
-       error (0, errno, "%s", file_hdr.c_name);
-     }
-   return;
- }
-+
-+static void
-+check_for_changed_file (name, header)
-+     char *name;
-+     struct new_cpio_header *header;
-+{
-+  struct stat new_file_stat;
-+
-+  if ((*xstat) (name, &new_file_stat) < 0)
-+    {
-+      error (0, errno, "%s", name);
-+      return;
-+    }
-+  if (header->c_filesize != new_file_stat.st_size)
-+    error (0, 0, "%s: size changed from %ld to %ld during copy-out",
-+      name, header->c_filesize, new_file_stat.st_size);
-+  if (header->c_mtime != new_file_stat.st_mtime)
-+    error (0, 0, "%s: mtime changed during copy-out",
-+      name, header->c_filesize, new_file_stat.st_size);
-+}
---- cpio-2.4.2/copypass.c.debian       Tue Jun 26 13:51:18 2001
-+++ cpio-2.4.2/copypass.c      Tue Jun 26 13:51:18 2001
-@@ -24,6 +24,10 @@
- #include "dstring.h"
- #include "extern.h"
-+/* Debian hack to fix a bug in the --sparse option.  This bug has been
-+   reported to "bug-gnu-utils@prep.ai.mit.edu".  (96/7/10) -BEM */
-+extern int delayed_seek_count;
-+
- /* Copy files listed on the standard input into directory `directory_name'.
-    If `link_flag', link instead of copying.  */
-@@ -167,6 +171,15 @@
-             copy_files_disk_to_disk (in_file_des, out_file_des, in_file_stat.st_size, input_name.ds_string);
-             disk_empty_output_buffer (out_file_des);
-+            /* Debian hack to fix a bug in the --sparse option.
-+                 This bug has been reported to
-+                 "bug-gnu-utils@prep.ai.mit.edu".  (96/7/10) -BEM */
-+            if (delayed_seek_count > 0)
-+              {
-+                lseek (out_file_des, delayed_seek_count-1, SEEK_CUR);
-+                write (out_file_des, "", 1);
-+                delayed_seek_count = 0;
-+              }
-             if (close (in_file_des) < 0)
-               error (0, errno, "%s", input_name.ds_string);
-             if (close (out_file_des) < 0)
-@@ -186,9 +199,16 @@
-               {
-                 times.actime = in_file_stat.st_atime;
-                 times.modtime = in_file_stat.st_mtime;
--                if (utime (input_name.ds_string, &times) < 0)
-+                /* Debian hack: Silently ignore EROFS because
-+                     reading the file won't have upset its timestamp
-+                     if it's on a read-only filesystem.  This has been
-+                     submitted as a suggestion to
-+                     "bug-gnu-utils@prep.ai.mit.edu".  -BEM */
-+                if (utime (input_name.ds_string, &times) < 0
-+                    && errno != EROFS)
-                   error (0, errno, "%s", input_name.ds_string);
--                if (utime (output_name.ds_string, &times) < 0)
-+                if (utime (output_name.ds_string, &times) < 0
-+                    && errno != EROFS)
-                   error (0, errno, "%s", output_name.ds_string);
-               }
-             if (retain_time_flag)
---- cpio-2.4.2/global.c.debian Wed Nov 30 23:48:12 1994
-+++ cpio-2.4.2/global.c        Tue Jun 26 13:51:18 2001
-@@ -134,6 +134,9 @@
- /* Name of file containing the archive, if known; NULL if stdin/out.  */
- char *archive_name = NULL;
-+/* Name of the remote shell command, if known; NULL otherwise.  */
-+char *rsh_command_option = NULL;
-+
- /* CRC checksum.  */
- unsigned long crc;
---- cpio-2.4.2/main.c.debian   Tue Jun 26 13:51:18 2001
-+++ cpio-2.4.2/main.c  Tue Jun 26 13:51:18 2001
-@@ -59,6 +59,7 @@
-   {"preserve-modification-time", 0, &retain_time_flag, TRUE},
-   {"rename", 0, &rename_flag, TRUE},
-   {"rename-batch-file", 1, 0, 137},
-+  {"rsh-command", 1, 0, 140},
-   {"quiet", 0, 0, 138},
-   {"sparse", 0, 0, 135},
-   {"swap", 0, 0, 'b'},
-@@ -87,7 +88,8 @@
-        [--file=[[user@]host:]archive] [--format=format] [--message=message]\n\
-        [--null] [--reset-access-time] [--verbose] [--dot] [--append]\n\
-        [--block-size=blocks] [--dereference] [--io-size=bytes] [--quiet]\n\
--       [--force-local] [--help] [--version] < name-list [> archive]\n", program_name);
-+       [--force-local] [--rsh-command=command] [--help] [--version] < name-list\n\
-+       [> archive]\n", program_name);
-   fprintf (fp, "\
-        %s {-i|--extract} [-bcdfmnrtsuvBSV] [-C bytes] [-E file] [-H format]\n\
-        [-M message] [-R [user][:.][group]] [-I [[user@]host:]archive]\n\
-@@ -98,7 +100,8 @@
-        [--io-size=bytes] [--pattern-file=file] [--format=format]\n\
-        [--owner=[user][:.][group]] [--no-preserve-owner] [--message=message]\n\
-        [--force-local] [--no-absolute-filenames] [--sparse] [--only-verify-crc]\n\
--       [--quiet] [--help] [--version] [pattern...] [< archive]\n",
-+       [--quiet] [--rsh-command=command] [--help] [--version] [pattern...]\n\
-+       [< archive]\n",
-          program_name);
-   fprintf (fp, "\
-        %s {-p|--pass-through} [-0adlmuvLV] [-R [user][:.][group]]\n\
-@@ -127,6 +130,7 @@
-   if (argc < 2)
-     usage (stderr, 2);
-+  rsh_command_option = getenv("CPIO_RSH");
-   xstat = lstat;
-   while ((c = getopt_long (argc, argv,
-@@ -289,6 +293,10 @@
-         copy_function = process_copy_pass;
-         break;
-+      case 140:
-+        rsh_command_option = optarg;
-+        break;
-+
-       case 'r':               /* Interactively rename.  */
-         rename_flag = TRUE;
-         break;
-@@ -377,8 +385,9 @@
-       usage (stderr, 2);
-     }
--  if ((!table_flag || !verbose_flag) && numeric_uid)
--    usage (stderr, 2);
-+  /* Debian hack: This version of cpio uses the -n flag also to extract
-+     tar archives using the numeric UID/GID instead of the user/group
-+     names in /etc/passwd and /etc/groups.  (98/10/15) -BEM */
-   /* Work around for pcc bug.  */
-   copy_in = process_copy_in;
-@@ -388,7 +397,9 @@
-     {
-       archive_des = 0;
-       if (link_flag || reset_time_flag || xstat != lstat || append_flag
--        || sparse_flag
-+        /* Debian hack: The sparse option is used with copy-in not
-+             copy-out.  This bug has been reported to
-+             "bug-gnu-utils@prep.ai.mit.edu".  (96/7/10) -BEM */
-         || output_archive_name
-         || (archive_name && input_archive_name))
-       usage (stderr, 2);
-@@ -408,6 +419,10 @@
-         || set_group_flag || swap_bytes_flag || swap_halfwords_flag
-         || (append_flag && !(archive_name || output_archive_name))
-         || rename_batch_file || no_abs_paths_flag
-+        /* Debian hack: The sparse option is used with copy-in not
-+             copy-out.  This bug has been reported to
-+             "bug-gnu-utils@prep.ai.mit.edu".  (96/7/10) -BEM */
-+        || sparse_flag
-         || input_archive_name || (archive_name && output_archive_name))
-       usage (stderr, 2);
-       if (archive_format == arf_unknown)
---- cpio-2.4.2/tar.c.debian    Fri Feb 25 20:25:33 1994
-+++ cpio-2.4.2/tar.c   Tue Jun 26 13:51:18 2001
-@@ -261,15 +261,18 @@
-       file_hdr->c_nlink = 1;
-       otoa (tar_hdr->mode, &file_hdr->c_mode);
-       file_hdr->c_mode = file_hdr->c_mode & 07777;
-+  /* Debian hack: This version of cpio uses the -n flag also to extract
-+     tar archives using the numeric UID/GID instead of the user/group
-+     names in /etc/passwd and /etc/groups.  (98/10/15) -BEM */
- #ifndef __MSDOS__
--      if (archive_format == arf_ustar
-+      if (archive_format == arf_ustar && !numeric_uid
-         && (uidp = getuidbyname (tar_hdr->uname)))
-       file_hdr->c_uid = *uidp;
-       else
- #endif
-       otoa (tar_hdr->uid, &file_hdr->c_uid);
- #ifndef __MSDOS__
--      if (archive_format == arf_ustar
-+      if (archive_format == arf_ustar && !numeric_uid
-         && (gidp = getgidbyname (tar_hdr->gname)))
-       file_hdr->c_gid = *gidp;
-       else
---- cpio-2.4.2/util.c.debian   Tue Jan 16 22:40:14 1996
-+++ cpio-2.4.2/util.c  Tue Jun 26 13:51:18 2001
-@@ -489,7 +489,9 @@
-   while (num_bytes > 0)
-     {
-       if (input_size == 0)
--      if (rc = disk_fill_input_buffer (in_des, DISK_IO_BLOCK_SIZE))
-+      if (rc = disk_fill_input_buffer (in_des,
-+        num_bytes < DISK_IO_BLOCK_SIZE ?
-+        num_bytes : DISK_IO_BLOCK_SIZE))
-         {
-           if (rc > 0)
-             error (0, 0, "File %s shrunk by %ld bytes, padding with zeros",
-@@ -808,13 +810,14 @@
-   copy_in = process_copy_in;
-   if (copy_function == copy_in)
--    fd = rmtopen (file, O_RDONLY | O_BINARY, 0666);
-+    fd = rmtopen (file, O_RDONLY | O_BINARY, 0666, rsh_command_option);
-   else
-     {
-       if (!append_flag)
--      fd = rmtopen (file, O_WRONLY | O_CREAT | O_TRUNC | O_BINARY, 0666);
-+      fd = rmtopen (file, O_WRONLY | O_CREAT | O_TRUNC | O_BINARY, 0666,
-+                      rsh_command_option);
-       else
--      fd = rmtopen (file, O_RDWR | O_BINARY, 0666);
-+      fd = rmtopen (file, O_RDWR | O_BINARY, 0666, rsh_command_option);
-     }
-   return fd;
---- cpio-2.4.2/rtapelib.c.debian       Wed Nov 30 23:59:40 1994
-+++ cpio-2.4.2/rtapelib.c      Tue Jun 26 13:51:18 2001
-@@ -264,11 +264,12 @@
-    On error, return -1.  */
- int
--__rmt_open (path, oflag, mode, bias)
-+__rmt_open (path, oflag, mode, bias, remote_shell)
-      char *path;
-      int oflag;
-      int mode;
-      int bias;
-+     const char *remote_shell;
- {
-   int i, rc;
-   char buffer[CMDBUFSIZE];    /* Command buffer.  */
-@@ -372,29 +373,43 @@
-       if (*login)
-       {
--        execl ("/usr/ucb/rsh", "rsh", system, "-l", login,
-+        /* Debian hack: added remote shell command line option.
-+           (98/5/20) -BEM */
-+        if (remote_shell) {
-+          const char *remote_shell_basename;
-+          remote_shell_basename = strrchr (remote_shell, '/');
-+          if (remote_shell_basename)
-+            remote_shell_basename++;
-+          else
-+            remote_shell_basename = remote_shell;
-+          execl (remote_shell, remote_shell_basename, system, "-l", login,
-                "/etc/rmt", (char *) 0);
--        execl ("/usr/bin/remsh", "remsh", system, "-l", login,
-+        } else {
-+        execl ("/usr/bin/ssh", "ssh", system, "-l", login,
-                "/etc/rmt", (char *) 0);
-         execl ("/usr/bin/rsh", "rsh", system, "-l", login,
-                "/etc/rmt", (char *) 0);
--        execl ("/usr/bsd/rsh", "rsh", system, "-l", login,
--               "/etc/rmt", (char *) 0);
--        execl ("/usr/bin/nsh", "nsh", system, "-l", login,
--               "/etc/rmt", (char *) 0);
-+        }
-       }
-       else
-       {
--        execl ("/usr/ucb/rsh", "rsh", system,
-+        /* Debian hack: added remote shell command line option.
-+           (98/5/20) -BEM */
-+        if (remote_shell) {
-+          const char *remote_shell_basename;
-+          remote_shell_basename = strrchr (remote_shell, '/');
-+          if (remote_shell_basename)
-+            remote_shell_basename++;
-+          else
-+            remote_shell_basename = remote_shell;
-+          execl (remote_shell, remote_shell_basename, system,
-                "/etc/rmt", (char *) 0);
--        execl ("/usr/bin/remsh", "remsh", system,
-+        } else {
-+        execl ("/usr/bin/ssh", "ssh", system,
-                "/etc/rmt", (char *) 0);
-         execl ("/usr/bin/rsh", "rsh", system,
-                "/etc/rmt", (char *) 0);
--        execl ("/usr/bsd/rsh", "rsh", system,
--               "/etc/rmt", (char *) 0);
--        execl ("/usr/bin/nsh", "nsh", system,
--               "/etc/rmt", (char *) 0);
-+        }
-       }
-       /* Bad problems if we get here.  */
---- cpio-2.4.2/extern.h.debian Tue Jun 26 13:51:18 2001
-+++ cpio-2.4.2/extern.h        Tue Jun 26 13:51:18 2001
-@@ -57,6 +57,7 @@
- extern char *new_media_message_after_number;
- extern int archive_des;
- extern char *archive_name;
-+extern char *rsh_command_option;
- extern unsigned long crc;
- #ifdef DEBUG_CPIO
- extern int debug_flag;
---- cpio-2.4.2/rmt.h.debian    Thu Dec  1 00:00:32 1994
-+++ cpio-2.4.2/rmt.h   Tue Jun 26 13:51:18 2001
-@@ -1,19 +1,19 @@
- /* Definitions for communicating with a remote tape drive.
--   Copyright (C) 1988, 1992 Free Software Foundation, Inc.
-+Copyright (C) 1988, 1992 Free Software Foundation, Inc.
--   This program is free software; you can redistribute it and/or modify
--   it under the terms of the GNU General Public License as published by
--   the Free Software Foundation; either version 2, or (at your option)
--   any later version.
--
--   This program is distributed in the hope that it will be useful,
--   but WITHOUT ANY WARRANTY; without even the implied warranty of
--   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
--   GNU General Public License for more details.
--
--   You should have received a copy of the GNU General Public License
--   along with this program; if not, write to the Free Software
--   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
-+This program is free software; you can redistribute it and/or modify
-+it under the terms of the GNU General Public License as published by
-+the Free Software Foundation; either version 2, or (at your option)
-+any later version.
-+
-+This program is distributed in the hope that it will be useful,
-+but WITHOUT ANY WARRANTY; without even the implied warranty of
-+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+GNU General Public License for more details.
-+
-+You should have received a copy of the GNU General Public License
-+along with this program; if not, write to the Free Software
-+Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
- #ifdef HAVE_UNISTD_H
- #include <unistd.h>
-@@ -67,10 +67,10 @@
- #define _remdev(path) (!f_force_local && (__rmt_path=index(path, ':')))
- #define _isrmt(fd)            ((fd) >= __REM_BIAS)
--#define rmtopen(path,oflag,mode) (_remdev(path) ? __rmt_open(path, oflag, mode, __REM_BIAS) : open(path, oflag, mode))
-+#define rmtopen(path,oflag,mode,rsh) (_remdev(path) ? __rmt_open(path, oflag, mode, __REM_BIAS,rsh) : open(path, oflag, mode))
- #define rmtaccess(path, amode)        (_remdev(path) ? 0 : access(path, amode))
- #define rmtstat(path, buf)    (_remdev(path) ? (errno = EOPNOTSUPP), -1 : stat(path, buf))
--#define rmtcreat(path, mode)  (_remdev(path) ? __rmt_open (path, 1 | O_CREAT, mode, __REM_BIAS) : creat(path, mode))
-+#define rmtcreat(path, mode, rsh)     (_remdev(path) ? __rmt_open (path, 1 | O_CREAT, mode, __REM_BIAS, rsh) : creat(path, mode))
- #define rmtlstat(path,buf)    (_remdev(path) ? (errno = EOPNOTSUPP), -1 : lstat(path,buf))
- #define rmtread(fd, buf, n)   (_isrmt(fd) ? __rmt_read(fd - __REM_BIAS, buf, n) : read(fd, buf, n))
---- cpio-2.4.2/cpio.1.debian   Tue Jun 26 13:51:18 2001
-+++ cpio-2.4.2/cpio.1  Tue Jun 26 13:51:18 2001
-@@ -8,19 +8,21 @@
- [\-\-file=[[user@]host:]archive] [\-\-format=format] [\-\-message=message]
- [\-\-null] [\-\-reset-access-time] [\-\-verbose] [\-\-dot] [\-\-append]
- [\-\-block-size=blocks] [\-\-dereference] [\-\-io-size=bytes] [\-\-quiet]
--[\-\-force\-local] [\-\-help] [\-\-version] < name-list [> archive]
-+[\-\-force\-local] [\-\-rsh-command=command] [\-\-help] [\-\-version]
-+< name-list [> archive]
- .B cpio
- {\-i|\-\-extract} [\-bcdfmnrtsuvBSV] [\-C bytes] [\-E file] [\-H format]
- [\-M message] [\-R [user][:.][group]] [\-I [[user@]host:]archive]
- [\-F [[user@]host:]archive] [\-\-file=[[user@]host:]archive]
- [\-\-make-directories] [\-\-nonmatching] [\-\-preserve-modification-time]
--[\-\-numeric-uid-gid] [\-\-rename] [\-\-list] [\-\-swap-bytes] [\-\-swap] [\-\-dot]
-+[\-\-numeric-uid-gid] [\-\-rename] [\-t|\-\-list] [\-\-swap-bytes] [\-\-swap] [\-\-dot]
- [\-\-unconditional] [\-\-verbose] [\-\-block-size=blocks] [\-\-swap-halfwords]
- [\-\-io-size=bytes] [\-\-pattern-file=file] [\-\-format=format]
- [\-\-owner=[user][:.][group]] [\-\-no-preserve-owner] [\-\-message=message]
--[\-\-force\-local] [\-\-no\-absolute\-filenames] [\-\-sparse] [\-\-only\-verify\-crc]
--[\-\-quiet] [\-\-help] [\-\-version] [pattern...] [< archive]
-+[\-\-force\-local] [\-\-no\-absolute\-filenames] [\-\-sparse]
-+[\-\-only\-verify\-crc] [\-\-quiet] [\-\-rsh-command=command] [\-\-help]
-+[\-\-version] [pattern...] [< archive]
- .B cpio
- {\-p|\-\-pass-through} [\-0adlmuvLV] [\-R [user][:.][group]]
-@@ -249,6 +251,10 @@
- .I "\-n, \-\-numeric-uid-gid"
- In the verbose table of contents listing, show numeric UID and GID
- instead of translating them into names.
-+Also extracts tar archives using the numeric UID and GID instead of the
-+user/group names.
-+.RB ( cpio
-+archives are always extracted using the numeric UID and GID.)
- .TP
- .I " \-\-no-absolute-filenames"
- In copy-in mode, create all files relative to the current directory,
-@@ -291,8 +297,17 @@
- separator is given, use the given user's login group.  Only the
- super-user can change files' ownership.
- .TP
-+.I "\-\-rsh-command=COMMAND"
-+Notifies
-+.B mt
-+that it should use COMMAND to communicate with remote devices instead of
-+.IR /usr/bin/ssh ,
-+.IR /usr/bin/rsh ,
-+or the command specified by the environment variable
-+.BR MT_RSH .
-+.TP
- .I "\-\-sparse"
--In copy-out and copy-pass modes, write files with large blocks of zeros
-+In copy-in and copy-pass modes, write files with large blocks of zeros
- as sparse files.
- .TP
- .I "\-s, \-\-swap-bytes"
---- cpio-2.4.2/mt.1.debian     Wed Nov 22 22:31:50 1995
-+++ cpio-2.4.2/mt.1    Tue Jun 26 13:51:18 2001
-@@ -3,7 +3,7 @@
- mt \- control magnetic tape drive operation
- .SH SYNOPSIS
- .B mt
--[\-V] [\-f device] [\-\-file=device] [\-\-version]
-+[\-V] [\-f device] [\-\-file=device] [\-\-rsh-command=command] [\-\-version]
- operation [count]
- .SH DESCRIPTION
- This manual page
-@@ -76,9 +76,6 @@
- .IR count .
- Equivalent to rewind followed by fsf
- .IR count .
--.IP seek
--Seek to block number
--.IR count .
- .IP eom
- Space to the end of the recorded media on the tape
- (for appending files onto tapes).
-@@ -93,6 +90,69 @@
- then rewind it again.
- .IP erase
- Erase the tape.
-+.IP fss
-+(SCSI tapes) Forward space
-+.I count
-+setmarks.
-+.IP bss
-+(SCSI tapes) Backward space
-+.I count
-+setmarks.
-+.IP "wset"
-+(SCSI tapes) Write
-+.I count
-+setmarks at current position (only SCSI tape).
-+.IP "eod, seod"
-+Space to end of valid data.  Used on streamer tape
-+drives to append data to the logical and of tape.
-+.IP setblk
-+(SCSI tapes) Set the block size of the drive to
-+.I count
-+bytes per record.
-+.IP setdensity
-+(SCSI tapes) Set the tape density code to
-+.I count.
-+The proper codes to use with each drive should be looked up from the
-+drive documentation.
-+.IP drvbuffer
-+(SCSI tapes) Set the tape drive buffer code to
-+.I number.
-+The proper value for unbuffered operation is zero and "normal" buffered
-+operation one. The meanings of other values can be found in the drive
-+documentation or, in case of a SCSI-2 drive, from the SCSI-2 standard.
-+.IP stoptions
-+(SCSI tapes) Set the driver options bits to
-+.I count
-+for the device.
-+The bits can be set by oring the following values: 1 to enable write
-+buffering, 2 to enable asynchronous writes, 4 to enable read ahead,
-+8 to enable debugging output (if it has been compiled to the driver).
-+.IP stwrthreshold
-+(SCSI tapes) The write threshold for the tape device is set to
-+.I count
-+kilobytes. The value must be smaller than or equal to the driver
-+buffer size.
-+.IP seek
-+(SCSI tapes) Seek to the
-+.I count
-+block on the tape.  This operation is available on some
-+Tandberg and Wangtek streamers and some SCSI-2 tape drives.
-+.IP tell
-+(SCSI tapes) Tell the current block on tape.  This operation is available on some
-+Tandberg and Wangtek streamers and some SCSI-2 tape drives.
-+.IP densities
-+(SCSI tapes) Write explanation of some common density codes to
-+standard output.
-+.IP datcompression
-+(some SCSI-2 DAT tapes) Inquire or set the compression status
-+(on/off). If the
-+.I count
-+is one the compression status is printed. If the
-+.I count
-+is zero, compression is disabled. Otherwise, compression is
-+enabled. The command uses the SCSI ioctl to read and write the Data
-+Compression Characteristics mode page (15). ONLY ROOT CAN USE THIS
-+COMMAND.
- .PP
- .B mt
- exits with a status of 0 if the operation succeeded, 1 if the
-@@ -111,6 +171,17 @@
- you have permission to do so (typically an entry in that user's
- `~/.rhosts' file).
- .TP
-+.I "\-\-rsh-command=command"
-+Notifies
-+.B mt
-+that it should use
-+.I command
-+to communicate with remote devices instead of
-+.IR /usr/bin/ssh ,
-+.IR /usr/bin/rsh ,
-+or the command specified by the environment variable
-+.BR MT_RSH .
-+.TP
- .I "\-V, \-\-version"
- Print the version number of
- .BR mt .
---- cpio-2.4.2/configure.debian        Wed Dec 20 17:34:04 1995
-+++ cpio-2.4.2/configure       Tue Jun 26 13:51:18 2001
-@@ -1,4 +1,5 @@
- #! /bin/sh
-+set +e
- # Guess values for system-dependent variables and create Makefiles.
- # Generated automatically using autoconf version 2.7 
---- cpio-2.4.2/mt.c.debian     Wed Nov 22 22:31:49 1995
-+++ cpio-2.4.2/mt.c    Tue Jun 26 13:51:18 2001
-@@ -16,6 +16,10 @@
-    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA
-    */
-+/* Modified for the Linux SCSI tape driver by Brian Mays from code
-+   written by Kai Makisara.
-+   Last Modified: Tue Apr 23 15:37:54 EDT 1996
-+*/
- /* If -f is not given, the environment variable TAPE is used;
-    if that is not set, a default device defined in sys/mtio.h is used.
-@@ -50,6 +54,46 @@
-    retension  Rewind the tape, then wind it to the end of the reel,
-               then rewind it again.
-    erase      Erase the tape.
-+   fss                (SCSI tapes) Forward space COUNT setmarks.
-+   bss                (SCSI tapes) Backward space COUNT setmarks.
-+   wset               (SCSI tapes) Write COUNT setmarks at current position
-+              (only SCSI tape).
-+   eod, seod  Space to end of valid data.  Used on streamer tape
-+              drives to append data to the logical and of tape.
-+   setblk     (SCSI tapes) Set the block size of the drive to COUNT
-+              bytes per record.
-+   setdensity (SCSI tapes) Set the tape density code to COUNT.  The
-+              proper codes to use with each drive should be looked
-+              up from the drive documentation.
-+   drvbuffer  (SCSI tapes) Set the tape drive buffer code to
-+              NUMBER.  The proper value for unbuffered operation is
-+              zero and "normal" buffered operation one. The meanings
-+              of other values can be found in the drive
-+              documentation or, in case of a SCSI-2 drive, from the
-+              SCSI-2 standard.
-+   stoptions  (SCSI tapes) Set the driver options bits to COUNT for
-+              the device.  The bits can be set by oring the
-+              following values: 1 to enable write buffering, 2 to
-+              enable asynchronous writes, 4 to enable read ahead, 8
-+              to enable debugging output (if it has been compiled to
-+              the driver).
-+   stwrthreshold 
-+              (SCSI tapes) The write threshold for the tape device
-+              is set to COUNT kilobytes.  The value must be smaller
-+              than or equal to the driver buffer size.
-+   seek               (SCSI tapes) Seek to the COUNT block on the tape.
-+              This operation is available on some Tandberg and
-+              Wangtek streamers and some SCSI-2 tape drives.
-+   tell               (SCSI tapes) Tell the current block on tape.  This
-+              operation is available on some Tandberg and Wangtek
-+              streamers and some SCSI-2 tape drives.
-+   densities  (SCSI tapes) Write explanation of some common density
-+              codes to standard output.
-+   datcompression
-+              (some SCSI-2 DAT tapes) Inquire or set the compression
-+              status (on/off).  If the COUNT is one the compression
-+              status is printed.  If the COUNT is zero, compression
-+              is disabled.  Otherwise, compression is enabled.
-    David MacKenzie <djm@gnu.ai.mit.edu> */
-@@ -97,6 +141,48 @@
- void perform_operation ();
- void print_status ();
- void usage ();
-+#ifdef MTTELL
-+void print_position ();
-+#endif
-+
-+int do_dat_compression(char *dev, int fn, int count);
-+
-+#if defined(linux) || defined(__linux)
-+#define MTDATCOMP 1000                /* Random unused number.  */
-+#define MTDENS 1001           /* Random unused number.  */
-+
-+struct densities {
-+  int code;
-+  char *name;
-+} density_tbl[] = {
-+  {0x00, "default"},
-+  {0x01, "NRZI (800 bpi)"},
-+  {0x02, "PE (1600 bpi)"},
-+  {0x03, "GCR (6250 bpi)"},
-+  {0x05, "QIC-45/60 (GCR, 8000 bpi)"},
-+  {0x06, "PE (3200 bpi)"},
-+  {0x07, "IMFM (6400 bpi)"},
-+  {0x08, "GCR (8000 bpi)"},
-+  {0x09, "GCR (37871 bpi)"},
-+  {0x0a, "MFM (6667 bpi)"},
-+  {0x0b, "PE (1600 bpi)"},
-+  {0x0c, "GCR (12960 bpi)"},
-+  {0x0d, "GCR (25380 bpi)"},
-+  {0x0f, "QIC-120 (GCR 10000 bpi)"},
-+  {0x10, "QIC-150/250 (GCR 10000 bpi)"},
-+  {0x11, "QIC-320/525 (GCR 16000 bpi)"},
-+  {0x12, "QIC-1350 (RLL 51667 bpi)"},
-+  {0x13, "DDS (61000 bpi)"},
-+  {0x14, "EXB-8200 (RLL 43245 bpi)"},
-+  {0x15, "EXB-8500 (RLL 45434 bpi)"},
-+  {0x16, "MFM 10000 bpi"},
-+  {0x17, "MFM 42500 bpi"},
-+  {0x22, "SLR4DC"},
-+  {0x24, "DDS-2"},
-+  {140, "EXB-8505 compressed"},
-+  {144, "EXB-8205 compressed"},
-+  {-1, NULL}};
-+#endif
- char *opnames[] =
- {
-@@ -107,6 +193,8 @@
- #endif
- #ifdef MTEOM
-   "eom",
-+  "eod",
-+  "seod",
- #endif
- #ifdef MTRETEN
-   "retension",
-@@ -121,6 +209,39 @@
- #ifdef MTSEEK
-   "seek",
- #endif
-+#ifdef MTTELL
-+  "tell",
-+#endif
-+#ifdef MTFSS
-+  "fss",
-+#endif
-+#ifdef MTBSS
-+  "bss",
-+#endif
-+#ifdef MTWSM
-+  "wset",
-+#endif
-+#ifdef MTSETBLK
-+  "setblk",
-+#endif
-+#ifdef MTSETDENSITY
-+  "setdensity",
-+#endif
-+#ifdef MTSETDRVBUFFER
-+  "drvbuffer",
-+#ifdef MT_ST_BOOLEANS
-+  "stoptions",
-+#endif
-+#ifdef MT_ST_WRITE_THRESHOLD
-+  "stwrthreshold",
-+#endif
-+#endif
-+#ifdef MTDATCOMP
-+  "datcompression",
-+#endif
-+#ifdef MTDENS
-+  "densities",
-+#endif
-   NULL
- };
-@@ -134,6 +255,8 @@
- #endif
- #ifdef MTEOM
-   MTEOM,
-+  MTEOM,
-+  MTEOM,
- #endif
- #ifdef MTRETEN
-   MTRETEN,
-@@ -148,9 +271,68 @@
- #ifdef MTSEEK
-   MTSEEK,
- #endif
-+#ifdef MTTELL
-+  MTTELL,
-+#endif
-+#ifdef MTFSS
-+  MTFSS,
-+#endif
-+#ifdef MTBSS
-+  MTBSS,
-+#endif
-+#ifdef MTWSM
-+  MTWSM,
-+#endif
-+#ifdef MTSETBLK
-+  MTSETBLK,
-+#endif
-+#ifdef MTSETDENSITY
-+  MTSETDENSITY,
-+#endif
-+#ifdef MTSETDRVBUFFER
-+  MTSETDRVBUFFER,
-+#ifdef MT_ST_BOOLEANS
-+  MTSETDRVBUFFER,
-+#endif
-+#ifdef MT_ST_WRITE_THRESHOLD
-+  MTSETDRVBUFFER,
-+#endif
-+#endif
-+#ifdef MTDATCOMP
-+  MTDATCOMP,
-+#endif
-+#ifdef MTDENS
-+  MTDENS,
-+#endif
-   0
- };
-+char *cbnames[] =
-+{
-+#ifdef MT_ST_BOOLEANS
-+  "stoptions",
-+#endif
-+#ifdef MT_ST_WRITE_THRESHOLD
-+  "stwrthreshold",
-+#endif
-+  NULL
-+};
-+
-+int count_bits[] =
-+{
-+#ifdef MT_ST_BOOLEANS
-+  MT_ST_BOOLEANS,
-+#endif
-+#ifdef MT_ST_WRITE_THRESHOLD
-+  MT_ST_WRITE_THRESHOLD,
-+#endif
-+  0
-+};
-+
-+#ifdef MT_TAPE_INFO
-+  struct mt_tape_info tapes[] = MT_TAPE_INFO;
-+#endif
-+
- /* If nonzero, don't consider file names that contain a `:' to be
-    on remote hosts; all files are local.  Always zero for mt;
-    since when do local device names contain colons?  */
-@@ -159,6 +341,7 @@
- struct option longopts[] =
- {
-   {"file", 1, NULL, 'f'},
-+  {"rsh-command", 1, NULL, 1},
-   {"version", 0, NULL, 'V'},
-   {"help", 0, NULL, 'H'},
-   {NULL, 0, NULL, 0}
-@@ -178,12 +361,15 @@
-   char *tapedev;
-   int tapedesc;
-   int i;
-+  char *rsh_command_option = getenv("MT_RSH");
-   program_name = argv[0];
-   tapedev = NULL;
-   count = 1;
--  while ((i = getopt_long (argc, argv, "f:t:V:H", longopts, (int *) 0)) != -1)
-+  /* Debian hack: Fixed a bug in the -V flag.  This bug has been
-+     reported to "bug-gnu-utils@prep.ai.mit.edu".  -BEM */
-+  while ((i = getopt_long (argc, argv, "f:t:VH", longopts, (int *) 0)) != -1)
-     {
-       switch (i)
-       {
-@@ -192,6 +378,10 @@
-         tapedev = optarg;
-         break;
-+      case 1:
-+        rsh_command_option = optarg;
-+        break;
-+
-       case 'V':
-         printf ("GNU mt %s", version_string);
-         exit (0);
-@@ -214,10 +404,22 @@
-     }
-   operation = operations[i];
-+  i = argmatch (argv[optind], cbnames);
-+
-   if (++optind < argc)
-+    /* Debian hack: Replaced the atoi function call with strtol so
-+       that hexidecimal values can be used for the count parameter.
-+       This bug has been reported to "bug-gnu-utils@prep.ai.mit.edu".
-+       (97/12/5) -BEM */
-+#if defined(STDC_HEADERS)
-+    count = (int) strtol (argv[optind], NULL, 0);
-+#else
-     count = atoi (argv[optind]);
-+#endif
-   if (++optind < argc)
-     usage (stderr, 1);
-+  if (i >= 0)
-+    count |= count_bits[i];
-   if (tapedev == NULL)
-     {
-@@ -230,27 +432,58 @@
- #endif
-     }
-+#ifdef MTDENS
-+  if (operation == MTDENS)
-+    {
-+      printf("Some SCSI tape density codes:\ncode   explanation\n");
-+      for (i=0; density_tbl[i].code >= 0; i++)
-+      printf("0x%02x   %s\n", density_tbl[i].code, density_tbl[i].name);
-+      exit (0);
-+    }
-+#endif
-+
-   if ( (operation == MTWEOF)
- #ifdef MTERASE
-        || (operation == MTERASE)
- #endif
-+#ifdef MTWSM
-+       || (operation == MTWSM)
-+#endif
-+#ifdef MTSETDRVBUFFER
-+       || (operation == MTSETDRVBUFFER)
-+#endif
-+#ifdef MTDATCOMP
-+       || (operation == MTDATCOMP)
-+#endif
-       )
--    tapedesc = rmtopen (tapedev, O_WRONLY, 0);
-+    tapedesc = rmtopen (tapedev, O_WRONLY, 0, rsh_command_option);
-   else
--    tapedesc = rmtopen (tapedev, O_RDONLY, 0);
-+    tapedesc = rmtopen (tapedev, O_RDONLY, 0, rsh_command_option);
-   if (tapedesc == -1)
-     error (1, errno, "%s", tapedev);
-   check_type (tapedev, tapedesc);
--  if (operation == MTASF)
--    {
--      perform_operation (tapedev, tapedesc, MTREW, 1);
--      operation = MTFSF;
--    }
--  perform_operation (tapedev, tapedesc, operation, count);
--  if (operation == MTNOP)
--    print_status (tapedev, tapedesc);
--
-+#ifdef MTDATCOMP
-+  if (operation == MTDATCOMP)
-+    do_dat_compression(tapedev, tapedesc, count);
-+  else
-+#endif
-+#ifdef MTTELL
-+  if (operation == MTTELL)
-+    print_position (tapedev, tapedesc);
-+  else
-+#endif
-+  {
-+    if (operation == MTASF)
-+      {
-+      perform_operation (tapedev, tapedesc, MTREW, 1);
-+      operation = MTFSF;
-+      }
-+    perform_operation (tapedev, tapedesc, operation, count);
-+    if (operation == MTNOP)
-+      print_status (tapedev, tapedesc);
-+  }
-+  
-   if (rmtclose (tapedesc) == -1)
-     error (2, errno, "%s", tapedev);
-@@ -283,10 +516,28 @@
-   control.mt_op = op;
-   control.mt_count = count;
--  if (rmtioctl (desc, MTIOCTOP, &control))
-+  /* Debian hack: The rmtioctl function returns -1 in case of an
-+     error, not 0.  This bug has been reported to
-+     "bug-gnu-utils@prep.ai.mit.edu".  (96/7/10) -BEM */
-+  if (rmtioctl (desc, MTIOCTOP, &control) == -1)
-     error (2, errno, "%s", dev);
- }
-+#ifdef MTTELL
-+void
-+print_position (dev, desc)
-+     char *dev;
-+     int desc;
-+{
-+  struct mtpos position;
-+
-+  if (rmtioctl (desc, MTIOCPOS, &position) == -1)
-+    error (2, errno, "%s", dev);
-+  printf("At block %d.\n", (int) position.mt_blkno);
-+
-+}
-+#endif
-+
- void
- print_status (dev, desc)
-      char *dev;
-@@ -297,7 +548,35 @@
-   if (rmtioctl (desc, MTIOCGET, &status))
-     error (2, errno, "%s", dev);
--  printf ("drive type = %d\n", (int) status.mt_type);
-+#ifdef MT_ISFTAPE_FLAG
-+  if ((int) status.mt_type & MT_ISFTAPE_FLAG)
-+    {
-+      printf ("qic-117 drive type = 0x%05x, ", (int) status.mt_type & 0x1ffff);
-+      if (GMT_DR_OPEN( (long) status.mt_gstat))
-+      {
-+        printf ("no tape or door open\n");
-+      }
-+      else
-+      {
-+        printf ("%s-line%s\n",
-+                GMT_ONLINE( (long) status.mt_gstat) ? "on" : "off",
-+                GMT_WR_PROT( (long) status.mt_gstat) ?
-+                " and write-protected" : "");
-+      }
-+    }
-+  else
-+#endif
-+    {
-+#ifdef MT_TAPE_INFO
-+      struct mt_tape_info *mt;
-+      for (mt = tapes; mt->t_type; mt++)
-+      if (mt->t_type == status.mt_type) break;
-+      if (mt->t_type != 0)
-+      printf ("drive type = %s\n", mt->t_name);
-+      else
-+#endif
-+      printf ("drive type = %d\n", (int) status.mt_type);
-+    }
- #if defined(hpux) || defined(__hpux)
-   printf ("drive status (high) = %d\n", (int) status.mt_dsreg1);
-   printf ("drive status (low) = %d\n", (int) status.mt_dsreg2);
-@@ -310,6 +589,60 @@
-   printf ("file number = %d\n", (int) status.mt_fileno);
-   printf ("block number = %d\n", (int) status.mt_blkno);
- #endif
-+#if defined(linux) || defined(__linux)
-+  if (status.mt_type == MT_ISSCSI1 ||
-+      status.mt_type == MT_ISSCSI2)
-+    {
-+      int dens, i;
-+      char *density;
-+      dens = (status.mt_dsreg & MT_ST_DENSITY_MASK) >> MT_ST_DENSITY_SHIFT;
-+      density = "unknown";
-+      for (i=0; density_tbl[i].code >= 0; i++)
-+      if (density_tbl[i].code == dens)
-+        {
-+          density = density_tbl[i].name;
-+          break;
-+        }
-+      printf("Tape block size %d bytes. Density code 0x%x (%s).\n",
-+           (int)((status.mt_dsreg & MT_ST_BLKSIZE_MASK) >>
-+                 MT_ST_BLKSIZE_SHIFT),
-+           dens, density);
-+
-+      printf("Soft error count since last status=%d\n",
-+           (int)(status.mt_erreg & MT_ST_SOFTERR_MASK) >>
-+           MT_ST_SOFTERR_SHIFT);
-+      printf("General status bits on (%x):\n", (unsigned)status.mt_gstat);
-+      if (GMT_EOF(status.mt_gstat))
-+      printf(" EOF");
-+      if (GMT_BOT(status.mt_gstat))
-+      printf(" BOT");
-+      if (GMT_EOT(status.mt_gstat))
-+      printf(" EOT");
-+      if (GMT_SM(status.mt_gstat))
-+      printf(" SM");
-+      if (GMT_EOD(status.mt_gstat))
-+      printf(" EOD");
-+      if (GMT_WR_PROT(status.mt_gstat))
-+      printf(" WR_PROT");
-+      if (GMT_ONLINE(status.mt_gstat))
-+      printf(" ONLINE");
-+      if (GMT_D_6250(status.mt_gstat))
-+      printf(" D_6250");
-+      if (GMT_D_1600(status.mt_gstat))
-+      printf(" D_1600");
-+      if (GMT_D_800(status.mt_gstat))
-+      printf(" D_800");
-+      if (GMT_DR_OPEN(status.mt_gstat))
-+      printf(" DR_OPEN");       
-+      if (GMT_IM_REP_EN(status.mt_gstat))
-+      printf(" IM_REP_EN");
-+      printf("\n");
-+    }
-+  else
-+    {
-+      printf("gstat = %0x\n", (unsigned)status.mt_gstat);
-+    }
-+#endif
- }
- void
-@@ -318,7 +651,122 @@
-   int status;
- {
-   fprintf (fp, "\
--Usage: %s [-V] [-f device] [--file=device] [--help] [--version] operation [count]\n",
-+Usage: %s [-V] [-f device] [--file=device] [--rsh-command=command]\n\
-+\t[--help] [--version] operation [count]\n",
-          program_name);
-   exit (status);
- }
-+
-+#if defined(linux) || defined(__linux)
-+/*** Get and set the DAT compression (Mode Page 15) ***/
-+
-+#define MODE_SENSE 0x1a
-+#define MODE_SELECT 0x15
-+
-+int
-+read_mode_page(int fn, int page, int length, unsigned char *buffer,
-+             int do_mask)
-+{
-+  int result, *ip;
-+  unsigned char tmpbuffer[30], *cmd;
-+
-+  memset(tmpbuffer, 0, 14);
-+  ip = (int *)&(tmpbuffer[0]);
-+  *ip = 0;
-+  *(ip+1) = length + 4;
-+
-+  cmd = &(tmpbuffer[8]);
-+  cmd[0] = MODE_SENSE;
-+  cmd[1] = 8;
-+  cmd[2] = page;
-+  if (do_mask)
-+    cmd[2] |= 0x40;  /* Get changeable parameter mask */
-+  cmd[4] = length + 4;
-+
-+  result = ioctl(fn, 1, tmpbuffer);
-+  if (result) {
-+    fprintf(stderr, "Can't read mode page. Are you sure you are root?\n");
-+    return 0;
-+  }
-+  memcpy(buffer, tmpbuffer + 8, length + 4);
-+  return 1;
-+}
-+
-+
-+int
-+write_mode_page(int fn, int page, int length, unsigned char *buffer)
-+{
-+  int result, *ip;
-+  unsigned char tmpbuffer[40], *cmd;
-+
-+  memset(tmpbuffer, 0, 14);
-+  ip = (int *)&(tmpbuffer[0]);
-+  *ip = length + 4;
-+  *(ip+1) = 0;
-+
-+  cmd = &(tmpbuffer[8]);
-+  cmd[0] = MODE_SELECT;
-+  cmd[1] = 0x10;
-+  cmd[4] = length + 4;
-+
-+  memcpy(tmpbuffer + 14, buffer, length + 4);
-+  tmpbuffer[14] = 0;  /* reserved data length */
-+  tmpbuffer[18] &= 0x3f;  /* reserved bits in page code byte */
-+
-+  result = ioctl(fn, 1, tmpbuffer);
-+  if (result) {
-+    fprintf(stderr, "Can't write mode page.\n");
-+    return 0;
-+  }
-+  return 1;
-+}
-+
-+
-+int
-+do_dat_compression(char *dev, int fn, int count)
-+{
-+  int i;
-+  unsigned char buffer[30], mask[30];
-+
-+  if (!read_mode_page(fn, 0x0f, 16, buffer, 0)) {
-+    error (2, errno, "%s", dev);
-+  }
-+
-+  if (count != 1) {
-+    if (read_mode_page(fn, 0x0f, 16, mask, 1))
-+      if (mask[4+2] & 0x80 == 0)
-+        fprintf(stderr, "Device does not allow setting this parameter.\n");
-+    if (count == 0)
-+      buffer[4+2] &= 0x7f;
-+    else {
-+      buffer[4+2] |= 0x80;
-+      if (buffer[4+2+1] & 0x80 == 0) {
-+        fprintf(stderr, "Warning: Decompression is disabled.  Enabling.\n");
-+        buffer[4+2+1] |= 0x80;
-+      }
-+    }
-+      buffer[1] = 0;
-+    if (!write_mode_page(fn, 0x0f, 16, buffer)) {
-+      error (2, errno, "%s", dev);
-+    }
-+    if (!read_mode_page(fn, 0x0f, 16, buffer, 0)) {  /* Re-read to check */
-+      error (2, errno, "%s", dev);
-+    }
-+  }
-+
-+  if (buffer[4+2] & 0x80)
-+    printf("Compression on.\n");
-+  else
-+    printf("Compression off.\n");
-+  if (buffer[4+2] & 0x40)
-+    printf("Compression capable.\n");
-+  else
-+    printf("Compression not capable.\n");
-+  if (buffer[4+2+1] & 0x80)
-+    printf("Decompression capable.\n");
-+  else
-+    printf("Decompression not capable.\n");
-+
-+  return 1;
-+}
-+#endif
---- cpio-2.4.2/rmt.c.debian    Tue Jun 26 13:51:18 2001
-+++ cpio-2.4.2/rmt.c   Tue Jun 26 13:59:12 2001
-@@ -45,9 +45,9 @@
- #endif
- #include <errno.h>
--#if defined (_I386) && defined (_AIX)
-+/* Debian hack: gcc has exhibited problems loading fcntl.h.  Therefore,
-+   I removed the preprocessor conditionals here - BEM */
- #include <fcntl.h>
--#endif
- #ifdef HAVE_UNISTD_H
- #include <unistd.h>
-@@ -78,7 +78,23 @@
- #include <errno.h>
- #else
- extern errno;
--extern char *sys_errlist[];
-+extern const char *const _sys_errlist[];
-+#if HAVE_STRERROR || _LIBC
-+#ifndef strerror
-+char *strerror();
-+#endif
-+#else
-+static char *private_strerror(errnum)
-+      int errnum;
-+{
-+      extern char *sys_errlist[];
-+      extern int sys_nerr;
-+      if(errnum>0 && errnum<=sys_nerr)
-+              return sys_errlist[errnum];
-+      return "Unknown system error";
-+}
-+#define strerror private_strerror
-+#endif
- #endif
- char resp[BUFSIZ];
-@@ -87,6 +103,30 @@
- #define       DEBUG1(f,a)     if (debug) fprintf(debug, f, a)
- #define       DEBUG2(f,a1,a2) if (debug) fprintf(debug, f, a1, a2)
-+/*
-+ * Support for Sun's extended RMT protocol
-+ */
-+#define RMTI_VERSION  -1
-+#define RMT_VERSION   1
-+
-+/* Extended 'i' commands */
-+#define RMTI_CACHE    0
-+#define RMTI_NOCACHE  1
-+#define RMTI_RETEN    2
-+#define RMTI_ERASE    3
-+#define RMTI_EOM      4
-+#define RMTI_NBSF     5
-+
-+/* Extended 's' comands */
-+#define MTS_TYPE      'T'
-+#define MTS_DSREG     'D'
-+#define MTS_ERREG     'E'
-+#define MTS_RESID     'R'
-+#define MTS_FILENO    'F'
-+#define MTS_BLKNO     'B'
-+#define MTS_FLAGS     'f'
-+#define MTS_BF                'b'
-+
- int
- main (argc, argv)
-      int argc;
-@@ -200,7 +240,12 @@
-       getstring (op);
-       getstring (count);
-       DEBUG2 ("rmtd: I %s %s\n", op, count);
-+      if (atoi(op) == RMTI_VERSION)
-+      {
-+        rval = RMT_VERSION;
-+      }
- #ifdef MTIOCTOP
-+      else
-       {
-       struct mtop mtop;
-       mtop.mt_op = atoi (op);
-@@ -212,6 +257,58 @@
- #endif
-       goto respond;
-+    case 'i':
-+      {
-+      struct mtop mtop;
-+      
-+      getstring (op);
-+      getstring (count);
-+      DEBUG2 ("rmtd: i %s %s\n", op, count);
-+      switch (atoi(op))
-+      {
-+#ifdef MTCACHE
-+        case RMTI_CACHE:
-+          mtop.mt_op = MTCACHE;
-+          break;
-+#endif
-+#ifdef MTNOCACHE
-+        case RMTI_NOCACHE:
-+          mtop.mt_op = MTNOCACHE;
-+          break;
-+#endif
-+#ifdef MTRETEN
-+        case RMTI_RETEN:
-+          mtop.mt_op = MTRETEN;
-+          break;
-+#endif
-+#ifdef MTERASE
-+        case RMTI_ERASE:
-+          mtop.mt_op = MTERASE;
-+          break;
-+#endif
-+#ifdef MTEOM
-+        case RMTI_EOM:
-+          mtop.mt_op = MTEOM;
-+          break;
-+#endif
-+#ifdef MTNBSF
-+        case RMTI_NBSF:
-+          mtop.mt_op = MTNBSF;
-+          break;
-+#endif
-+        default:
-+          errno = EINVAL;
-+          goto ioerror;
-+      }
-+#ifdef MTIOCTOP
-+      mtop.mt_count = atoi (count);
-+      if (ioctl (tape, MTIOCTOP, (char *) &mtop) < 0)
-+        goto ioerror;
-+      rval = mtop.mt_count;
-+      }
-+#endif
-+      goto respond;
-+
-     case 'S':                 /* status */
-       DEBUG ("rmtd: S\n");
-       {
-@@ -227,6 +324,59 @@
-       goto top;
-       }
-+    case 's':
-+      {
-+      char s;
-+      struct mtget mtget;
-+
-+      if (read (0, &s, 1) != 1)
-+        goto top;
-+      
-+#ifdef MTIOCGET
-+      if (ioctl (tape, MTIOCGET, (char *) &mtget) < 0)
-+        goto ioerror;
-+#endif
-+      switch (s)
-+      {
-+        case MTS_TYPE:
-+          rval = mtget.mt_type;
-+          break;
-+
-+        case MTS_DSREG:
-+          rval = mtget.mt_dsreg;
-+          break;
-+
-+        case MTS_ERREG:
-+          rval = mtget.mt_erreg;
-+          break;
-+
-+        case MTS_RESID:
-+          rval = mtget.mt_resid;
-+          break;
-+
-+        case MTS_FILENO:
-+          rval = mtget.mt_fileno;
-+          break;
-+
-+        case MTS_BLKNO:
-+          rval = mtget.mt_blkno;
-+          break;
-+
-+        case MTS_FLAGS:
-+          rval = mtget.mt_gstat;
-+          break;
-+
-+        case MTS_BF:
-+          rval = 0;
-+          break;
-+
-+        default:
-+          errno = EINVAL;
-+          goto ioerror;
-+      }
-+      goto respond;
-+      }
-+
-     default:
-       DEBUG1 ("rmtd: garbage command %c\n", c);
-       exit (3);
-@@ -289,7 +439,11 @@
-      int num;
- {
--  DEBUG2 ("rmtd: E %d (%s)\n", num, sys_errlist[num]);
--  (void) sprintf (resp, "E%d\n%s\n", num, sys_errlist[num]);
-+/* Debian hack: rmt has problems on systems (such as the Hurd) where
-+   sys_errlist is not available therefore I borrowed some code from
-+   error.c to fix this problem.  This has been reported to the upstream
-+   maintainers.  (7/22/99) - BEM */
-+  DEBUG2 ("rmtd: E %d (%s)\n", num, strerror (num));
-+  (void) sprintf (resp, "E%d\n%s\n", num, strerror (num));
-   (void) write (1, resp, strlen (resp));
- }
---- cpio-2.4.2/cpio.texi.debian        Wed Dec 20 17:29:34 1995
-+++ cpio-2.4.2/cpio.texi       Tue Jun 26 13:51:18 2001
-@@ -257,10 +257,11 @@
- @example
- cpio @{-o|--create@} [-0acvABLV] [-C bytes] [-H format]
- [-M message] [-O [[user@@]host:]archive] [-F [[user@@]host:]archive]
--[--file=[[user@@]host:]archive] [--format=format] [--sparse]
-+[--file=[[user@@]host:]archive] [--format=format]
- [--message=message][--null] [--reset-access-time] [--verbose]
- [--dot] [--append] [--block-size=blocks] [--dereference]
--[--io-size=bytes] [--help] [--version] < name-list [> archive]
-+[--io-size=bytes] [--rsh-command=command] [--help] [--version]
-+< name-list [> archive]
- @end example
- @node Copy-in mode, Copy-pass mode, Copy-out mode, Invoking `cpio'
-@@ -286,9 +287,9 @@
- [--dot] [--unconditional] [--verbose] [--block-size=blocks]
- [--swap-halfwords] [--io-size=bytes] [--pattern-file=file]
- [--format=format] [--owner=[user][:.][group]]
--[--no- preserve-owner] [--message=message] [--help] [--version]
--[-no-abosolute-filenames] [-only-verify-crc] [-quiet]
--[pattern...] [< archive]
-+[--no-preserve-owner] [--message=message] [--help] [--version]
-+[-no-abosolute-filenames] [--sparse] [-only-verify-crc] [-quiet]
-+[--rsh-command=command] [pattern...] [< archive]
- @end example
- @node Copy-pass mode, Options, Copy-in mode, Invoking `cpio'
-@@ -492,6 +493,10 @@
- separator is given, use the given user's login group.  Only the
- super-user can change files' ownership.
-+@item --rsh-command=COMMAND
-+Notifies cpio that is should use COMMAND to communicate with remote
-+devices.
-+
- @item -s, --swap-bytes
- Swap the bytes of each halfword (pair of bytes) in the files.This option
- can be used in copy-in mode.
-@@ -502,7 +507,7 @@
- @item --sparse
- Write files with large blocks of zeros as sparse files.  This option is
--used in copy-out and copy-pass modes.
-+used in copy-in and copy-pass modes.
- @item -t, --list
- Print a table of contents of the input.
---- cpio-2.4.2/rmt.sh.debian   Tue Jun 26 13:51:18 2001
-+++ cpio-2.4.2/rmt.sh  Tue Jun 26 13:51:18 2001
-@@ -0,0 +1,8 @@
-+#!/bin/sh
-+#
-+# This is not a mistake.  This shell script (/etc/rmt) has been provided
-+# for compatibility with other Unix-like systems, some of which have
-+# utilities that expect to find (and execute) rmt in the /etc directory
-+# on remote systems.
-+#
-+exec /usr/sbin/rmt
---- cpio-2.4.2/debian/prerm.debian     Tue Jun 26 13:51:18 2001
-+++ cpio-2.4.2/debian/prerm    Tue Jun 26 13:51:18 2001
-@@ -0,0 +1,20 @@
-+#!/bin/sh -e
-+
-+# movedoc - function to make the transition /usr/doc -> /usr/share/doc
-+movedoc()
-+{
-+    PKG=cpio
-+    OLD=/usr/doc/$PKG
-+    if test -h $OLD; then
-+      rm -f $OLD
-+    fi
-+}
-+
-+if [ "$1" = remove ]; then 
-+    update-alternatives --remove mt /bin/mt-gnu
-+    install-info --quiet --remove /usr/info/cpio.info
-+    if test -L /sbin/rmt -a /sbin/rmt -ef /usr/sbin/rmt; then
-+      rm -f /sbin/rmt
-+    fi
-+    movedoc
-+fi
---- cpio-2.4.2/debian/changelog.debian Tue Jun 26 13:51:18 2001
-+++ cpio-2.4.2/debian/changelog        Tue Jun 26 13:51:18 2001
-@@ -0,0 +1,217 @@
-+cpio (2.4.2-36) unstable; urgency=low
-+
-+  * Fixed error with mt alternatives.  (Closes: Bug#84476)
-+
-+ -- Brian Mays <brian@debian.org>  Fri,  2 Feb 2001 15:05:22 -0500
-+
-+cpio (2.4.2-35) unstable; urgency=low
-+
-+  * Renamed gmt to mt-gnu.  (Closes: Bug#84118)
-+
-+ -- Brian Mays <brian@debian.org>  Tue, 30 Jan 2001 19:42:28 -0500
-+
-+cpio (2.4.2-34) unstable; urgency=low
-+
-+  * Added an environment variable to cpio and mt to specify the remote
-+    command.  (Closes: Bug#71048)
-+  * Added compatibility with the mt-st package.  (Closes: Bug#83813)
-+
-+ -- Brian Mays <brian@debian.org>  Sun, 28 Jan 2001 16:15:44 -0500
-+
-+cpio (2.4.2-33) unstable; urgency=low
-+
-+  * Added density code 0x22 (SLR4DC) to mt.  (Closes: Bug#67424)
-+
-+ -- Brian Mays <brian@debian.org>  Thu, 27 Jul 2000 17:49:56 -0400
-+
-+cpio (2.4.2-32) frozen unstable; urgency=low
-+
-+  * Added patch by Fred Long <flong@sea.com> and Marc SCHAEFER
-+    <schaefer@alphanet.ch> to fix file corruption when a file changes
-+    during the backup.  (Closes: Bug#53056)
-+  * Added patch from Anders Hammarquist <iko@dd.chalmers.se> to make
-+    rmt work with Solaris ufsdump/ufsrestore.  (Closes: Bug#58323)
-+
-+ -- Brian Mays <brian@debian.org>  Thu, 17 Feb 2000 12:43:01 -0500
-+
-+cpio (2.4.2-31) frozen unstable; urgency=low
-+
-+  * Fixed missing element from manpage.  (Closes: Bug#56904)
-+
-+ -- Brian Mays <brian@debian.org>  Thu,  3 Feb 2000 13:39:55 -0500
-+
-+cpio (2.4.2-30) frozen unstable; urgency=low
-+
-+  * Added build-time dependencies.
-+
-+ -- Brian Mays <brian@debian.org>  Mon, 17 Jan 2000 13:32:18 -0500
-+
-+cpio (2.4.2-29) unstable; urgency=low
-+
-+  * Added patch from Mark Eichin to fix mt's datcompression.  (Closes:
-+    Bug#52755)
-+
-+ -- Brian Mays <brian@debian.org>  Fri, 17 Dec 1999 14:14:40 -0500
-+
-+cpio (2.4.2-28) unstable; urgency=low
-+
-+  * Modified cpio so that the -v and -V flags work with
-+    --only-verify-crc.  (Closes: Bug#49791)
-+
-+ -- Brian Mays <brian@debian.org>  Wed, 10 Nov 1999 08:42:34 -0500
-+
-+cpio (2.4.2-27) unstable; urgency=low
-+
-+  * Fixed FHS /usr/doc -> /usr/share/doc transition scheme.
-+
-+ -- Brian Mays <brian@debian.org>  Fri,  1 Oct 1999 12:43:24 -0400
-+
-+cpio (2.4.2-26) unstable; urgency=low
-+
-+  * Added symbolic link /usr/doc/cpio -> /usr/share/doc/cpio.
-+
-+ -- Brian Mays <brian@debian.org>  Thu, 16 Sep 1999 13:45:04 -0400
-+
-+cpio (2.4.2-25) unstable; urgency=low
-+
-+  * Changed section to "utils".
-+  * Made /etc/rmt a wrapper script (with comments detailing its purpose)
-+    instead of a symlink.
-+  * Removed tar from cpio man page.  (Closes: Bug#38043)
-+  * Moved doc, man, and info to /usr/share as per the FHS.
-+  * Fixed bug in rmt causing problems on systems (such as the Hurd)
-+    where sys_errlist is not available.  (Closes: Bug#37164)
-+
-+ -- Brian Mays <brian@debian.org>  Thu, 22 Jul 1999 12:04:32 -0400
-+
-+cpio (2.4.2-24) unstable; urgency=low
-+
-+  * Made Debian scripts create and remove the symbolic links to rmt.
-+    (Closes: Bug#33670)
-+
-+ -- Brian Mays <brian@debian.org>  Mon, 22 Feb 1999 17:24:21 -0500
-+
-+cpio (2.4.2-23) frozen unstable; urgency=low
-+
-+  * Fixed a bug causing cpio to segfault when the tar format is used.
-+  * Fixed bugs causing cpio to use the wrong minor device numbers.
-+
-+ -- Brian Mays <brian@debian.org>  Wed,  6 Jan 1999 09:59:24 -0500
-+
-+cpio (2.4.2-22) unstable frozen; urgency=low
-+
-+  * Fixed "Lwhence\noffset\n" error in rmt manual page.  (Fixes:
-+    Bug#28960)
-+
-+ -- Brian Mays <brian@debian.org>  Fri,  6 Nov 1998 11:01:57 -0500
-+
-+cpio (2.4.2-21) unstable; urgency=low
-+
-+  * Modified cpio to use the -n flag also to extract tar archives using
-+    the numeric UID/GID instead of the user/group names in /etc/passwd
-+    and /etc/groups.
-+
-+ -- Brian Mays <brian@debian.org>  Thu, 15 Oct 1998 15:20:34 -0400
-+
-+cpio (2.4.2-20) unstable; urgency=low
-+
-+  * Fixed bug in --sparse feature.
-+
-+ -- Brian Mays <brian@debian.org>  Mon,  5 Oct 1998 12:51:47 -0400
-+
-+cpio (2.4.2-19) unstable; urgency=low
-+
-+  * Added NEWS and README to /usr/doc/cpio.  (Fixes: Bug#26338)
-+
-+ -- Brian Mays <brian@debian.org>  Wed,  2 Sep 1998 13:32:18 -0400
-+
-+cpio (2.4.2-18) unstable; urgency=low
-+
-+  * Added patch from Evan Harris to fix mt's datcompression.  (Fixes:
-+    Bug#23980)
-+
-+ -- Brian Mays <brian@debian.org>  Mon, 29 Jun 1998 11:35:57 -0400
-+
-+cpio (2.4.2-17) unstable; urgency=low
-+
-+  * Added patch necessary to build cpio in glibc_2.1.  (Provided by
-+    Juan Cespedes <cespedes@debian.org>.)  (Fixes: Bug#22643)
-+  * Added a --rsh-command command line option (similar to tar's) to
-+    cpio and mt.
-+  * Made ssh the default remote command.
-+
-+ -- Brian Mays <brian@debian.org>  Tue, 26 May 1998 13:01:27 -0400
-+
-+cpio (2.4.2-16) unstable frozen; urgency=low
-+
-+  * Fixed problem causing corruption of old style ascii cpio archives.
-+    Problem caused by a change in the dev_t type used by glibc.
-+    (Fixes: Bug#22857)
-+
-+ -- Brian Mays <brian@debian.org>  Tue, 26 May 1998 13:01:19 -0400
-+
-+cpio (2.4.2-15) frozen unstable; urgency=low
-+
-+  * Added a patch required for cpio to compile on a PowerPC.  Fixes:
-+    Bug#21411.
-+  * Removed bashisms from the debian/rules makefile.
-+
-+ -- Brian Mays <brian@debian.org>  Mon, 20 Apr 1998 14:20:36 -0400
-+
-+cpio (2.4.2-14) unstable; urgency=low
-+
-+  * Removed old FSF address from copyright file.
-+
-+ -- Brian Mays <brian@debian.org>  Thu, 12 Feb 1998 17:45:29 -0500
-+
-+cpio (2.4.2-13) unstable; urgency=low
-+
-+  * Changed the function responsible for processing the count parameter
-+    from atoi() to strtol().  This will allow entries such as 0x24 to be
-+    used.
-+
-+ -- Brian Mays <brian@debian.org>  Fri,  5 Dec 1997 17:21:08 -0500
-+
-+cpio (2.4.2-12) unstable; urgency=low
-+
-+  * Added patch to report more information on FTAPE drives.
-+  * Made several miscellaneous fixes to source.
-+
-+ -- Brian Mays <brian@debian.org>  Sun, 26 Oct 1997 15:47:59 -0500
-+
-+cpio (2.4.2-11) unstable; urgency=low
-+
-+  * Libc6 release.
-+
-+ -- Brian Mays <brian@debian.org>  Tue,  5 Aug 1997 16:53:14 -0400
-+
-+cpio (2.4.2-10) unstable; urgency=low
-+
-+  * Added CR at end of `mt status' output (fixed Bug#7632).
-+
-+ -- Brian Mays <brian@debian.org>  Tue, 25 Feb 1997 12:15:09 -0500
-+
-+cpio (2.4.2-9) unstable; urgency=low
-+
-+  * Fixed a couple of bugs.
-+  * Moved /usr/doc/cpio/ChangeLog.gz to /usr/doc/cpio/changelog.gz.
-+
-+ -- Brian Mays <brian@debian.org>  Thu, 2 Jan 1997 12:18:39 -0500
-+
-+cpio (2.4.2-8) unstable; urgency=low
-+
-+  * Fixed bug #4427, wrong syscall used to print position of tape.
-+
-+ -- Brian Mays <brian@debian.org>  Thu, 12 Sep 1996 09:55:21 -0400
-+
-+cpio (2.4.2-7) unstable; urgency=low
-+
-+  * New upstream source.
-+  * Added an rmt manpage (from BSD).
-+  * First release with the new source format.
-+
-+ -- Brian Mays <brian@debian.org>  Fri, 23 Aug 1996 23:27:40 -0400
-+
-+Local variables:
-+mode: debian-changelog
-+End:
---- cpio-2.4.2/debian/rules.debian     Tue Jun 26 13:51:18 2001
-+++ cpio-2.4.2/debian/rules    Tue Jun 26 13:51:18 2001
-@@ -0,0 +1,89 @@
-+#!/usr/bin/make -f
-+# -*- makefile -*-
-+# debian/rules file - for cpio
-+# Copyright 1996-99 by Brian Mays
-+# Patterned after the hello package by Ian Jackson.
-+
-+package=cpio
-+
-+Makefile:
-+      $(checkdir)
-+      ./configure --prefix=/usr/share --exec_prefix=
-+
-+build:        Makefile
-+      $(checkdir)
-+      $(MAKE) CFLAGS='-O2 -g -Wall' all rmt info
-+      touch build
-+
-+clean:
-+      $(checkdir)
-+      $(RM) build
-+      $(MAKE) -i distclean || $(MAKE) -f Makefile.in distclean
-+      $(RM) config.cache
-+      $(RM) -r *~ debian/tmp debian/*~ debian/files*
-+
-+binary-indep: checkroot build
-+      $(checkdir)
-+
-+binary-arch:  checkroot build
-+      $(chechdir)
-+      $(RM) -r debian/tmp
-+      install -d debian/tmp debian/tmp/DEBIAN
-+      install -d debian/tmp/usr/share/doc/$(package)
-+# Install Debian package control information files
-+      install debian/postinst \
-+              debian/prerm debian/tmp/DEBIAN/.
-+# Install directories
-+      install -d      \
-+              debian/tmp/etc  \
-+              debian/tmp/sbin \
-+              debian/tmp/bin  \
-+              debian/tmp/usr/sbin     \
-+              debian/tmp/usr/share/man/man1   \
-+              debian/tmp/usr/share/man/man8   \
-+              debian/tmp/usr/share/info
-+# Install files
-+      $(MAKE) install prefix=debian/tmp/usr/share exec_prefix=debian/tmp \
-+        libexecdir=debian/tmp/usr/sbin
-+      mv debian/tmp/bin/mt debian/tmp/bin/mt-gnu 
-+      mv debian/tmp/usr/share/man/man1/mt.1 \
-+        debian/tmp/usr/share/man/man1/mt-gnu.1
-+# Strip binaries
-+      strip debian/tmp/bin/*
-+      strip debian/tmp/usr/sbin/*
-+# Install documentation
-+      install -m 644 ChangeLog debian/tmp/usr/share/doc/$(package)/changelog
-+      install -m 644 NEWS README debian/tmp/usr/share/doc/$(package)/.
-+# Install changelog & copyright
-+      install -m 644 debian/changelog \
-+        debian/tmp/usr/share/doc/$(package)/changelog.Debian
-+      install -m 644 rmt.8 debian/tmp/usr/share/man/man8/.
-+      install rmt.sh debian/tmp/etc/rmt
-+      gzip -9v debian/tmp/usr/share/doc/$(package)/*
-+      gzip -9v debian/tmp/usr/share/man/*/*
-+      gzip -9v debian/tmp/usr/share/info/*
-+      install -m 644 debian/copyright debian/tmp/usr/share/doc/$(package)/.
-+# Determine shared library dependencies
-+      dpkg-shlibdeps cpio mt rmt
-+# Genereate deb file
-+      dpkg-gencontrol
-+      chown -R root.root debian/tmp
-+      chmod -R g-ws debian/tmp
-+      dpkg-deb --build debian/tmp ..
-+
-+define checkdir
-+      test -f $(package).h -a -f debian/rules
-+endef
-+
-+# Below here is fairly generic really
-+
-+binary:               binary-indep binary-arch
-+
-+source diff:
-+      @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
-+
-+checkroot:
-+      $(checkdir)
-+      test root = "`whoami`"
-+
-+.PHONY: binary binary-arch binary-indep clean checkroot
---- cpio-2.4.2/debian/postinst.debian  Tue Jun 26 13:51:18 2001
-+++ cpio-2.4.2/debian/postinst Tue Jun 26 13:51:18 2001
-@@ -0,0 +1,34 @@
-+#!/bin/sh -e
-+
-+# movedoc - function to make the transition /usr/doc -> /usr/share/doc
-+movedoc()
-+{
-+    PKG=cpio
-+    OLD=/usr/doc/$PKG
-+    NEW=/usr/share/doc/$PKG
-+    if test -d $OLD -a ! -h $OLD -a ! $OLD -ef $NEW; then
-+      rm -f $OLD/.dhelp
-+      if test -e $OLD && ! rmdir $OLD 2>/dev/null; then
-+          VERSION_CONTROL=t \
-+          cp -ab $OLD $NEW/..
-+          rm -rf $OLD
-+      fi
-+    fi
-+    if test -d /usr/doc -a ! -e $OLD -a -d $NEW; then
-+      ln -s $NEW $OLD
-+    fi
-+}
-+
-+if [ "$1" = configure ]; then
-+    # Fix some screwup in old package
-+    case "$2" in
-+    2.4.2-3[45]) update-alternatives --remove mt /bin/gmt; esac
-+    update-alternatives --install /bin/mt mt /bin/mt-gnu 10 \
-+      --slave \
-+      /usr/share/man/man1/mt.1.gz mt.1.gz /usr/share/man/man1/mt-gnu.1.gz
-+    install-info --quiet \
-+      --description="A program to manage archives of files." \
-+      --section "General Commands" "General Commands" /usr/info/cpio.info
-+    test -f /sbin/rmt || ln -s ../usr/sbin/rmt /sbin/rmt
-+    movedoc
-+fi
---- cpio-2.4.2/debian/copyright.debian Tue Jun 26 13:51:18 2001
-+++ cpio-2.4.2/debian/copyright        Tue Jun 26 13:51:18 2001
-@@ -0,0 +1,69 @@
-+This is the Debian GNU/Linux prepackaged version of GNU cpio
-+(including mt).
-+
-+This package was put together by Ian Murdock <imurdock@debian.org>,
-+from sources obtained from:
-+ prep.ai.mit.edu:/pub/gnu
-+
-+This package has been modified by Brian Mays <brian@debian.org>.
-+Modifications of cpio package for Debian GNU/Linux Copyright (C) 1996-99
-+Brian Mays and are released under the GPL (on Debian systems see
-+`/usr/doc/copyright/GPL').
-+
-+Changes:
-+ * added Debian GNU/Linux package maintenance system files
-+ * moved rmt from /etc to /usr/sbin and installed a symbolic link to
-+   /usr/sbin/rmt
-+ * split cpio and mt into two separate Debian binary packages
-+ * fixed 'mt -V' bug
-+ * modified cpio to print a list of filenames terminated by a null
-+   character when the -t and -0 flags are used
-+ * eliminated a spurious error message printed when the -a flag is
-+   used on a read-only filesystem
-+ * fixed a remote ioctl bug in mt that caused spurious error messages
-+   when commands were sent to a remote tape device
-+ * added SCSI support to mt
-+ * fixed 'cpio --sparse' bug
-+ * added an rmt man page (from BSD).
-+ * fixed a bug that could cause an endless loop
-+ * fixed a bug that can occur when restoring a whole filesystem
-+ * fixed problem causing corruption of old style ascii cpio archives
-+ * fixed a bug that prevents cpio from being compiled with glibc 2.1
-+ * added an rsh-command option to cpio and mt
-+ * made ssh the default remote command (instead of rsh)
-+ * fixed bug causing cpio to segfault when the tar format is used
-+ * fixed bugs causing cpio to use the wrong minor device numbers
-+ * fixed bug in rmt causing problems on systems (such as the Hurd)
-+   where sys_errlist is not available
-+ * modified cpio so that the -v and -V flags work with
-+   --only-verify-crc
-+
-+GNU cpio is Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc.
-+
-+   This program is free software; you can redistribute it and/or modify
-+   it under the terms of the GNU General Public License as published by
-+   the Free Software Foundation; version 2 dated June, 1991.
-+
-+   This program is distributed in the hope that it will be useful,
-+   but WITHOUT ANY WARRANTY; without even the implied warranty of
-+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+   GNU General Public License for more details.
-+
-+On Debian GNU/Linux systems, the complete text of the GNU General
-+Public License can be found in `/usr/doc/copyright/GPL'.
-+
-+rmt.c is Copyright (C) 1983 Regents of the University of California.
-+
-+   All rights reserved.
-+
-+   Redistribution and use in source and binary forms are permitted
-+   provided that the above copyright notice and this paragraph are
-+   duplicated in all such forms and that any documentation,
-+   advertising materials, and other materials related to such
-+   distribution and use acknowledge that the software was developed
-+   by the University of California, Berkeley.  The name of the
-+   University may not be used to endorse or promote products derived
-+   from this software without specific prior written permission.
-+   THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
-+   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
-+   WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
---- cpio-2.4.2/debian/control.debian   Tue Jun 26 13:51:18 2001
-+++ cpio-2.4.2/debian/control  Tue Jun 26 13:51:18 2001
-@@ -0,0 +1,21 @@
-+Source: cpio
-+Section: utils
-+Priority: important
-+Maintainer: Brian Mays <brian@debian.org>
-+Build-Depends: texinfo
-+Standards-Version: 3.2.1.0
-+
-+Package: cpio
-+Architecture: any
-+Depends: ${shlibs:Depends}
-+Replaces: cpio-mt
-+Conflicts: mt-st(<<0.6), cpio-mt
-+Description: GNU cpio -- a program to manage archives of files.
-+ GNU cpio is a tool for creating and extracting archives, or copying
-+ files from one place to another.  It handles a number of cpio formats
-+ as well as reading and writing tar files.
-+ .
-+ This package also includes rmt, the remote tape server, and GNU mt, a
-+ tape drive control program.  The mt program is essential for magnetic
-+ tape drive users.  Debian's version of GNU mt supports SCSI tape
-+ drives.
---- cpio-2.4.2/debian/substvars.debian Tue Jun 26 13:51:18 2001
-+++ cpio-2.4.2/debian/substvars        Tue Jun 26 13:51:18 2001
-@@ -0,0 +1 @@
-+shlibs:Depends=libc6 (>= 2.1.97)
---- cpio-2.4.2/rmt.8.debian    Tue Jun 26 13:51:18 2001
-+++ cpio-2.4.2/rmt.8   Tue Jun 26 13:51:18 2001
-@@ -0,0 +1,223 @@
-+.\" Copyright (c) 1983, 1991, 1993
-+.\"   The Regents of the University of California.  All rights reserved.
-+.\"
-+.\" Redistribution and use in source and binary forms, with or without
-+.\" modification, are permitted provided that the following conditions
-+.\" are met:
-+.\" 1. Redistributions of source code must retain the above copyright
-+.\"    notice, this list of conditions and the following disclaimer.
-+.\" 2. Redistributions in binary form must reproduce the above copyright
-+.\"    notice, this list of conditions and the following disclaimer in the
-+.\"    documentation and/or other materials provided with the distribution.
-+.\" 3. All advertising materials mentioning features or use of this software
-+.\"    must display the following acknowledgement:
-+.\"   This product includes software developed by the University of
-+.\"   California, Berkeley and its contributors.
-+.\" 4. Neither the name of the University nor the names of its contributors
-+.\"    may be used to endorse or promote products derived from this software
-+.\"    without specific prior written permission.
-+.\"
-+.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-+.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+.\" SUCH DAMAGE.
-+.\"
-+.\"     @(#)rmt.8     8.2 (Berkeley) 12/11/93
-+.\"
-+.Dd December 11, 1993
-+.Dt RMT 8
-+.Os BSD 4.2
-+.Sh NAME
-+.Nm rmt
-+.Nd remote magtape protocol module
-+.Sh SYNOPSIS
-+.Nm rmt
-+.Sh DESCRIPTION
-+.Nm Rmt
-+is a program used by tar, cpio, mt, and the remote dump and restore
-+programs in manipulating a magnetic tape drive through an interprocess
-+communication connection.
-+.Nm Rmt
-+is normally started up with an
-+.Xr rexec 3
-+or
-+.Xr rcmd 3
-+call or the
-+.Xr rsh 1
-+command.
-+.Pp
-+The 
-+.Nm rmt
-+program accepts requests specific to the manipulation of
-+magnetic tapes, performs the commands, then responds with
-+a status indication.  All responses are in
-+.Tn ASCII
-+and in
-+one of two forms. 
-+Successful commands have responses of:
-+.Bd -filled -offset indent
-+.Sm off
-+.Sy A Ar number No \en
-+.Sm on
-+.Ed
-+.Pp
-+.Ar Number
-+is an
-+.Tn ASCII
-+representation of a decimal number.
-+Unsuccessful commands are responded to with:
-+.Bd -filled -offset indent
-+.Sm off
-+.Xo Sy E Ar error-number
-+.No \en Ar error-message
-+.No \en
-+.Xc
-+.Sm on
-+.Ed
-+.Pp
-+.Ar Error-number
-+is one of the possible error
-+numbers described in
-+.Xr intro 2
-+and
-+.Ar error-message
-+is the corresponding error string as printed
-+from a call to
-+.Xr perror 3 .
-+The protocol is comprised of the
-+following commands, which are sent as indicated - no spaces are supplied
-+between the command and its arguments, or between its arguments, and
-+.Ql \en
-+indicates that a newline should be supplied:
-+.Bl -tag -width Ds
-+.Sm off
-+.It Xo Sy \&O Ar device
-+.No \en Ar mode No \en
-+.Xc
-+Open the specified 
-+.Ar device
-+using the indicated
-+.Ar mode .
-+.Ar Device
-+is a full pathname and
-+.Ar mode
-+is an
-+.Tn ASCII
-+representation of a decimal
-+number suitable for passing to
-+.Xr open 2 .
-+If a device had already been opened, it is
-+closed before a new open is performed.
-+.It Xo Sy C Ar device No \en
-+.Xc
-+Close the currently open device.  The
-+.Ar device
-+specified is ignored.
-+.It Xo Sy L
-+.Ar offset No \en
-+.Ar whence No \en
-+.Xc
-+.Sm on
-+Perform an
-+.Xr lseek 2
-+operation using the specified parameters.
-+The response value is that returned from the
-+.Xr lseek
-+call.
-+.Sm off
-+.It Sy W Ar count No \en
-+.Sm on
-+Write data onto the open device.
-+.Nm Rmt
-+reads
-+.Ar count
-+bytes from the connection, aborting if
-+a premature end-of-file is encountered.
-+The response value is that returned from
-+the
-+.Xr write 2
-+call.
-+.Sm off
-+.It Sy R Ar count No \en
-+.Sm on
-+Read
-+.Ar count
-+bytes of data from the open device.
-+If
-+.Ar count
-+exceeds the size of the data buffer (10 kilobytes), it is
-+truncated to the data buffer size.
-+.Nm rmt
-+then performs the requested 
-+.Xr read 2
-+and responds with 
-+.Sm off
-+.Sy A Ar count-read No \en
-+.Sm on
-+if the read was
-+successful; otherwise an error in the
-+standard format is returned.  If the read
-+was successful, the data read is then sent.
-+.Sm off
-+.It Xo Sy I Ar operation
-+.No \en Ar count No \en
-+.Xc
-+.Sm on
-+Perform a
-+.Dv MTIOCOP
-+.Xr ioctl 2
-+command using the specified parameters.
-+The parameters are interpreted as the
-+.Tn ASCII
-+representations of the decimal values
-+to place in the 
-+.Ar mt_op
-+and
-+.Ar mt_count
-+fields of the structure used in the
-+.Xr ioctl
-+call.  The return value is the
-+.Ar count
-+parameter when the operation is successful.
-+.It Sy S
-+Return the status of the open device, as
-+obtained with a
-+.Dv MTIOCGET
-+.Xr ioctl
-+call.  If the operation was successful,
-+an ``ack'' is sent with the size of the
-+status buffer, then the status buffer is
-+sent (in binary).
-+.El
-+.Sm on
-+.Pp
-+Any other command causes 
-+.Nm rmt
-+to exit.
-+.Sh DIAGNOSTICS
-+All responses are of the form described above.
-+.Sh SEE ALSO
-+.Xr tar 1 ,
-+.Xr cpio 1 ,
-+.Xr mt 1 ,
-+.Xr rsh 1 ,
-+.Xr rcmd 3 ,
-+.Xr rexec 3 ,
-+.Xr mtio 4 ,
-+.Xr rdump 8 ,
-+.Xr rrestore 8
-+.Sh BUGS
-+People should be discouraged from using this for a remote
-+file access protocol.
-+.Sh HISTORY
-+The
-+.Nm
-+command appeared in
-+.Bx 4.2 .
This page took 0.126813 seconds and 4 git commands to generate.