--- /dev/null
+From jhpb@sarto.gaithersburg.md.us Mon Jul 26 21:57:20 1999
+Return-Path: <jhpb@sarto.gaithersburg.md.us>
+Received: from mail.redhat.com (mail.redhat.com [199.183.24.239])
+ by developer.redhat.com (8.8.7/8.8.7) with ESMTP id VAA15169
+ for <bugzilla@developer.redhat.com>; Mon, 26 Jul 1999 21:57:20 -0400
+Received: from lacrosse.corp.redhat.com (root@lacrosse.corp.redhat.com [207.175.42.154])
+ by mail.redhat.com (8.8.7/8.8.7) with ESMTP id VAA21351
+ for <bugzilla@developer.redhat.com>; Mon, 26 Jul 1999 21:57:20 -0400
+Received: from mail.redhat.com (mail.redhat.com [199.183.24.239])
+ by lacrosse.corp.redhat.com (8.9.3/8.9.3) with ESMTP id VAA01496
+ for <bugzilla@lacrosse.redhat.com>; Mon, 26 Jul 1999 21:57:19 -0400
+Received: from sjc3-1.relay.mail.uu.net (sjc3-1.relay.mail.uu.net [199.171.54.122])
+ by mail.redhat.com (8.8.7/8.8.7) with ESMTP id VAA21342
+ for <bugzilla@redhat.com>; Mon, 26 Jul 1999 21:57:19 -0400
+Received: from uucp1.uu.net by sjc3sosrv11.alter.net with SMTP
+ (peer crosschecked as: uucp1.uu.net [192.48.96.81])
+ id QQgzpn12816
+ for <bugzilla@redhat.com>; Tue, 27 Jul 1999 01:57:56 GMT
+Received: from sarto.UUCP by uucp1.uu.net with UUCP/RMAIL
+ ; Mon, 26 Jul 1999 21:55:38 -0400
+Received: from sarto.gaithersburg.md.us (IDENT:jhpb@altera.gaithersburg.md.us [10.10.10.11])
+ by altera.gaithersburg.md.us (8.9.3/8.9.3) with ESMTP id UAA02705
+ for <bugzilla@redhat.com>; Mon, 26 Jul 1999 20:51:35 -0400
+Sender: jhpb@sarto.gaithersburg.md.us
+Message-ID: <379D0297.ECEADA06@sarto.gaithersburg.md.us>
+Date: Mon, 26 Jul 1999 20:51:35 -0400
+From: "Joseph H. Buehler" <jhpb@sarto.gaithersburg.md.us>
+X-Mailer: Mozilla 4.61 [en] (X11; I; Linux 2.2.5 i686)
+X-Accept-Language: en
+MIME-Version: 1.0
+To: bugzilla@redhat.com
+Subject: BUG ID #4208
+Content-Type: multipart/mixed;
+ boundary="------------747FAF18CE4E4F8E71D6ED66"
+
+This is a multi-part message in MIME format.
+--------------747FAF18CE4E4F8E71D6ED66
+Content-Type: text/plain; charset=us-ascii
+Content-Transfer-Encoding: 7bit
+
+The 2.4.2 version of GNU cpio goes into an infinite loop when unpacking
+cpio files that have empty files with hard links. Duplicate as
+follows:
+
+rm -fr t &&
+mkdir t &&
+touch t/f1 &&
+ln t/f1 t/f2 &&
+find t | cpio -o -H newc > temp.cpio &&
+cpio -idmuv <temp.cpio &&
+true
+
+Also, cpio on systems without lchown() (probably not Redhat) will incorrectly
+set the permissions on files that symlinks point at, instead of the
+symlink itself.
+
+Patch is attached.
+
+Joe Buehler
+--------------747FAF18CE4E4F8E71D6ED66
+Content-Type: text/plain; charset=us-ascii;
+ name="cpio-2.4.2.patch"
+Content-Transfer-Encoding: 7bit
+Content-Disposition: inline;
+ filename="cpio-2.4.2.patch"
+
+*** cpio-2.4.2.redhat/copypass.c Mon Jan 8 16:59:05 1996
+--- cpio-2.4.2/copypass.c Wed Sep 11 21:22:04 1996
+***************
+*** 24,33 ****
+ #include "dstring.h"
+ #include "extern.h"
+
+- #ifndef HAVE_LCHOWN
+- #define lchown chown
+- #endif
+-
+ /* Copy files listed on the standard input into directory `directory_name'.
+ If `link_flag', link instead of copying. */
+
+--- 24,29 ----
+***************
+*** 360,371 ****
+--- 356,369 ----
+ }
+
+ /* Set the attributes of the new link. */
++ #ifdef HAVE_LCHOWN
+ if (!no_chown_flag)
+ if ((lchown (output_name.ds_string,
+ set_owner_flag ? set_owner : in_file_stat.st_uid,
+ set_group_flag ? set_group : in_file_stat.st_gid) < 0)
+ && errno != EPERM)
+ error (0, errno, "%s", output_name.ds_string);
++ #endif
+ free (link_name);
+ }
+ #endif
+*** cpio-2.4.2.redhat/copyin.c Wed Nov 30 17:49:06 1994
+--- cpio-2.4.2/copyin.c Tue Sep 17 11:21:15 1996
+***************
+*** 29,38 ****
+ #include <fnmatch.h>
+ #endif
+
+- #ifndef HAVE_LCHOWN
+- #define lchown chown
+- #endif
+-
+ static void read_pattern_file ();
+ static void tape_skip_padding ();
+ static void defer_copyin ();
+--- 29,34 ----
+***************
+*** 982,993 ****
+--- 978,991 ----
+ link_name = NULL;
+ continue;
+ }
++ #ifdef HAVE_LCHOWN
+ if (!no_chown_flag)
+ if ((lchown (file_hdr.c_name,
+ set_owner_flag ? set_owner : file_hdr.c_uid,
+ set_group_flag ? set_group : file_hdr.c_gid) < 0)
+ && errno != EPERM)
+ error (0, errno, "%s", file_hdr.c_name);
++ #endif
+ free (link_name);
+ link_name = NULL;
+ }
+***************
+*** 1306,1312 ****
+
+ for (d = deferments; d != NULL; d = d->next)
+ {
+- d = deferments;
+ link_res = link_to_maj_min_ino (d->header.c_name,
+ d->header.c_dev_maj, d->header.c_dev_maj,
+ d->header.c_ino);
+--- 1304,1309 ----
+
+--------------747FAF18CE4E4F8E71D6ED66--
+