fix (#186339) on ppc and s390

This commit is contained in:
Peter Vrabec 2006-03-25 17:40:51 +00:00
parent 81dcc18abf
commit cd1ff72d3a
2 changed files with 70 additions and 58 deletions

View File

@ -1,58 +1,5 @@
--- cpio-2.6/src/copyin.c.lfs 2006-03-15 16:30:48.000000000 -0500
+++ cpio-2.6/src/copyin.c 2006-03-15 16:35:33.000000000 -0500
@@ -106,7 +106,7 @@
header type. */
static void
-tape_skip_padding (int in_file_des, int offset)
+tape_skip_padding (int in_file_des, off_t offset)
{
int pad;
@@ -911,7 +911,7 @@
printf ("%3u, %3u ", file_hdr->c_rdev_maj,
file_hdr->c_rdev_min);
else
- printf ("%8lu ", file_hdr->c_filesize);
+ printf ("%8llu ", file_hdr->c_filesize);
printf ("%s ", tbuf + 4);
@@ -1153,7 +1153,7 @@
tape_buffered_read (ascii_header, in_des, 70L);
ascii_header[70] = '\0';
sscanf (ascii_header,
- "%6lo%6lo%6lo%6lo%6lo%6lo%6lo%11lo%6lo%11lo",
+ "%6lo%6lo%6lo%6lo%6lo%6lo%6lo%11lo%6lo%11llo",
&dev, &file_hdr->c_ino,
&file_hdr->c_mode, &file_hdr->c_uid, &file_hdr->c_gid,
&file_hdr->c_nlink, &rdev, &file_hdr->c_mtime,
--- cpio-2.6/src/extern.h.lfs 2004-09-08 06:49:57.000000000 -0400
+++ cpio-2.6/src/extern.h 2006-03-15 16:28:46.000000000 -0500
@@ -161,14 +161,14 @@
void tape_empty_output_buffer P_((int out_des));
void disk_empty_output_buffer P_((int out_des));
void swahw_array P_((char *ptr, int count));
-void tape_buffered_write P_((char *in_buf, int out_des, long num_bytes));
-void tape_buffered_read P_((char *in_buf, int in_des, long num_bytes));
+void tape_buffered_write P_((char *in_buf, int out_des, off_t num_bytes));
+void tape_buffered_read P_((char *in_buf, int in_des, off_t num_bytes));
int tape_buffered_peek P_((char *peek_buf, int in_des, int num_bytes));
-void tape_toss_input P_((int in_des, long num_bytes));
-void copy_files_tape_to_disk P_((int in_des, int out_des, long num_bytes));
-void copy_files_disk_to_tape P_((int in_des, int out_des, long num_bytes, char *filename));
-void copy_files_disk_to_disk P_((int in_des, int out_des, long num_bytes, char *filename));
-void warn_if_file_changed P_((char *file_name, unsigned long old_file_size,
+void tape_toss_input P_((int in_des, off_t num_bytes));
+void copy_files_tape_to_disk P_((int in_des, int out_des, off_t num_bytes));
+void copy_files_disk_to_tape P_((int in_des, int out_des, off_t num_bytes, char *filename));
+void copy_files_disk_to_disk P_((int in_des, int out_des, off_t num_bytes, char *filename));
+void warn_if_file_changed P_((char *file_name, off_t old_file_size,
unsigned long old_file_mtime));
void create_all_directories P_((char *name));
void prepare_append P_((int out_file_des));
--- cpio-2.6/src/util.c.lfs 2004-09-08 06:44:49.000000000 -0400
+++ cpio-2.6/src/util.c 2006-03-15 16:29:20.000000000 -0500
--- cpio-2.6/src/util.c.lfs 2004-09-08 12:44:49.000000000 +0200
+++ cpio-2.6/src/util.c 2006-03-25 13:34:10.000000000 +0100
@@ -207,7 +207,7 @@
Exit with an error if end of file is reached. */
@ -222,8 +169,70 @@
return hash_table[temp]->file_name;
}
}
--- cpio-2.6/src/cpiohdr.h.lfs 2003-11-21 09:48:13.000000000 -0500
+++ cpio-2.6/src/cpiohdr.h 2006-03-15 16:27:30.000000000 -0500
--- cpio-2.6/src/copyin.c.lfs 2004-09-08 13:10:02.000000000 +0200
+++ cpio-2.6/src/copyin.c 2006-03-25 13:35:43.000000000 +0100
@@ -106,7 +106,7 @@
header type. */
static void
-tape_skip_padding (int in_file_des, int offset)
+tape_skip_padding (int in_file_des, off_t offset)
{
int pad;
@@ -911,7 +911,7 @@
printf ("%3u, %3u ", file_hdr->c_rdev_maj,
file_hdr->c_rdev_min);
else
- printf ("%8lu ", file_hdr->c_filesize);
+ printf ("%8llu ", file_hdr->c_filesize);
printf ("%s ", tbuf + 4);
@@ -1153,7 +1153,7 @@
tape_buffered_read (ascii_header, in_des, 70L);
ascii_header[70] = '\0';
sscanf (ascii_header,
- "%6lo%6lo%6lo%6lo%6lo%6lo%6lo%11lo%6lo%11lo",
+ "%6lo%6lo%6lo%6lo%6lo%6lo%6lo%11lo%6lo%11llo",
&dev, &file_hdr->c_ino,
&file_hdr->c_mode, &file_hdr->c_uid, &file_hdr->c_gid,
&file_hdr->c_nlink, &rdev, &file_hdr->c_mtime,
@@ -1211,7 +1211,7 @@
tape_buffered_read (ascii_header, in_des, 104L);
ascii_header[104] = '\0';
sscanf (ascii_header,
- "%8lx%8lx%8lx%8lx%8lx%8lx%8lx%8lx%8lx%8lx%8lx%8lx%8lx",
+ "%8lx%8lx%8lx%8lx%8lx%8lx%8llx%8lx%8lx%8lx%8lx%8lx%8lx",
&file_hdr->c_ino, &file_hdr->c_mode, &file_hdr->c_uid,
&file_hdr->c_gid, &file_hdr->c_nlink, &file_hdr->c_mtime,
&file_hdr->c_filesize, &file_hdr->c_dev_maj, &file_hdr->c_dev_min,
--- cpio-2.6/src/extern.h.lfs 2004-09-08 12:49:57.000000000 +0200
+++ cpio-2.6/src/extern.h 2006-03-25 13:34:10.000000000 +0100
@@ -161,14 +161,14 @@
void tape_empty_output_buffer P_((int out_des));
void disk_empty_output_buffer P_((int out_des));
void swahw_array P_((char *ptr, int count));
-void tape_buffered_write P_((char *in_buf, int out_des, long num_bytes));
-void tape_buffered_read P_((char *in_buf, int in_des, long num_bytes));
+void tape_buffered_write P_((char *in_buf, int out_des, off_t num_bytes));
+void tape_buffered_read P_((char *in_buf, int in_des, off_t num_bytes));
int tape_buffered_peek P_((char *peek_buf, int in_des, int num_bytes));
-void tape_toss_input P_((int in_des, long num_bytes));
-void copy_files_tape_to_disk P_((int in_des, int out_des, long num_bytes));
-void copy_files_disk_to_tape P_((int in_des, int out_des, long num_bytes, char *filename));
-void copy_files_disk_to_disk P_((int in_des, int out_des, long num_bytes, char *filename));
-void warn_if_file_changed P_((char *file_name, unsigned long old_file_size,
+void tape_toss_input P_((int in_des, off_t num_bytes));
+void copy_files_tape_to_disk P_((int in_des, int out_des, off_t num_bytes));
+void copy_files_disk_to_tape P_((int in_des, int out_des, off_t num_bytes, char *filename));
+void copy_files_disk_to_disk P_((int in_des, int out_des, off_t num_bytes, char *filename));
+void warn_if_file_changed P_((char *file_name, off_t old_file_size,
unsigned long old_file_mtime));
void create_all_directories P_((char *name));
void prepare_append P_((int out_file_des));
--- cpio-2.6/src/cpiohdr.h.lfs 2003-11-21 15:48:13.000000000 +0100
+++ cpio-2.6/src/cpiohdr.h 2006-03-25 13:34:10.000000000 +0100
@@ -34,8 +34,8 @@
unsigned short c_mtimes[2];
unsigned short c_namesize;

View File

@ -6,7 +6,7 @@
Summary: A GNU archiving program.
Name: cpio
Version: 2.6
Release: 14
Release: 15
License: GPL
Group: Applications/Archiving
URL: http://www.gnu.org/software/cpio/
@ -106,6 +106,9 @@ fi
%{_infodir}/*.info*
%changelog
* Sat Mar 25 2006 Peter Vrabec <pvrabec@redhat.com> 2.6-15
- fix (#186339) on ppc and s390
* Thu Mar 23 2006 Peter Vrabec <pvrabec@redhat.com> 2.6-14
- init struct file_hdr (#186339)