Fix extracting from AIX big archives.
authorTom Rix <trix@redhat.com>
Wed, 20 Mar 2002 16:49:10 +0000 (16:49 +0000)
committerTom Rix <trix@redhat.com>
Wed, 20 Mar 2002 16:49:10 +0000 (16:49 +0000)
bfd/ChangeLog
bfd/coff-rs6000.c
bfd/coff64-rs6000.c

index c0e8dee858242136283a492b8d7224ab09387cf8..13dc43bd698e7849573c3931ec7e8cec18d3ee6a 100644 (file)
@@ -1,3 +1,9 @@
+2002-03-20  Tom Rix  <trix@redhat.com>
+
+       * coff-rs6000.c (_bfd_xcoff_stat_arch_elt): Renamed from 
+       _bfd_xcoff_generic_stat_arch_elt.  Fix format check.
+       * coff64-rs6000.c :  Use _bfd_xcoff_stat_arch_elt. 
+
 2002-03-19  Tom Rix  <trix@redhat.com>
 
        * xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): Look through all 
index eed3ee6805efcc70cd48cba197159374060d46c7..75d77ab46fa67aaff62613743583f77d41b1386e 100644 (file)
@@ -45,7 +45,7 @@ extern boolean _bfd_xcoff_slurp_armap PARAMS ((bfd *));
 extern const bfd_target *_bfd_xcoff_archive_p PARAMS ((bfd *));
 extern PTR _bfd_xcoff_read_ar_hdr PARAMS ((bfd *));
 extern bfd *_bfd_xcoff_openr_next_archived_file PARAMS ((bfd *, bfd *));
-extern int _bfd_xcoff_generic_stat_arch_elt PARAMS ((bfd *, struct stat *));
+extern int _bfd_xcoff_stat_arch_elt PARAMS ((bfd *, struct stat *));
 extern boolean _bfd_xcoff_write_armap
   PARAMS ((bfd *, unsigned int, struct orl *, unsigned int, int));
 extern boolean _bfd_xcoff_write_archive_contents PARAMS ((bfd *));
@@ -1417,7 +1417,7 @@ _bfd_xcoff_openr_next_archived_file (archive, last_file)
 /* Stat an element in an XCOFF archive.  */
 
 int
-_bfd_xcoff_generic_stat_arch_elt (abfd, s)
+_bfd_xcoff_stat_arch_elt (abfd, s)
      bfd *abfd;
      struct stat *s;
 {
@@ -1427,7 +1427,7 @@ _bfd_xcoff_generic_stat_arch_elt (abfd, s)
       return -1;
     }
 
-  if (! xcoff_big_format_p (abfd))
+  if (! xcoff_big_format_p (abfd->my_archive))
     {
       struct xcoff_ar_hdr *hdrp = arch_xhdr (abfd);
 
@@ -3644,7 +3644,7 @@ const bfd_target rs6000coff_vec =
   _bfd_xcoff_read_ar_hdr,                  /* _read_ar_hdr */
   _bfd_xcoff_openr_next_archived_file,     /* _openr_next_archived_file */
   _bfd_generic_get_elt_at_index,           /* _get_elt_at_index */
-  _bfd_xcoff_generic_stat_arch_elt,        /* _generic_dtat_arch_elt */
+  _bfd_xcoff_stat_arch_elt,                /* _generic_stat_arch_elt */
                                            /* XCOFF archives do not have
                                              a timestamp.  */
   bfd_true,                                /* _update_armap_timestamp */
@@ -3904,7 +3904,7 @@ const bfd_target pmac_xcoff_vec =
   _bfd_xcoff_read_ar_hdr,                  /* _read_ar_hdr */
   _bfd_xcoff_openr_next_archived_file,     /* _openr_next_archived_file */
   _bfd_generic_get_elt_at_index,           /* _get_elt_at_index */
-  _bfd_xcoff_generic_stat_arch_elt,        /* _generic_dtat_arch_elt */
+  _bfd_xcoff_stat_arch_elt,                /* _generic_stat_arch_elt */
                                            /* XCOFF archives do not have
                                              a timestamp.  */
   bfd_true,                                /* _update_armap_timestamp */
index 0248daa75cef1398b85afc6109ff89c23eb53c6e..e89ba7440f75daf5173d03fbd8e060c18484488a 100644 (file)
@@ -103,7 +103,7 @@ extern reloc_howto_type * xcoff64_reloc_type_lookup
 extern boolean _bfd_xcoff_slurp_armap PARAMS ((bfd *));
 extern PTR _bfd_xcoff_read_ar_hdr PARAMS ((bfd *));
 extern bfd *_bfd_xcoff_openr_next_archived_file PARAMS ((bfd *, bfd *));
-extern int _bfd_xcoff_generic_stat_arch_elt PARAMS ((bfd *, struct stat *));
+extern int _bfd_xcoff_stat_arch_elt PARAMS ((bfd *, struct stat *));
 extern boolean _bfd_xcoff_write_armap
   PARAMS ((bfd *, unsigned int, struct orl *, unsigned int, int));
 extern boolean _bfd_xcoff_write_archive_contents PARAMS ((bfd *));
@@ -2677,9 +2677,9 @@ const bfd_target rs6000coff64_vec =
   bfd_dont_truncate_arname,                /* _truncate_arname */
   _bfd_xcoff_write_armap,                  /* _write_armap */
   _bfd_xcoff_read_ar_hdr,                  /* _read_ar_hdr */
-  xcoff64_openr_next_archived_file,     /* _openr_next_archived_file */
+  xcoff64_openr_next_archived_file,        /* _openr_next_archived_file */
   _bfd_generic_get_elt_at_index,           /* _get_elt_at_index */
-  _bfd_xcoff_generic_stat_arch_elt,        /* _generic_dtat_arch_elt */
+  _bfd_xcoff_stat_arch_elt,                /* _generic_stat_arch_elt */
   /* XCOFF archives do not have
      a timestamp.  */
   bfd_true,                                /* _update_armap_timestamp */
@@ -2930,9 +2930,9 @@ const bfd_target aix5coff64_vec =
   bfd_dont_truncate_arname,                /* _truncate_arname */
   _bfd_xcoff_write_armap,                  /* _write_armap */
   _bfd_xcoff_read_ar_hdr,                  /* _read_ar_hdr */
-  xcoff64_openr_next_archived_file,     /* _openr_next_archived_file */
+  xcoff64_openr_next_archived_file,        /* _openr_next_archived_file */
   _bfd_generic_get_elt_at_index,           /* _get_elt_at_index */
-  _bfd_xcoff_generic_stat_arch_elt,        /* _generic_dtat_arch_elt */
+  _bfd_xcoff_stat_arch_elt,                /* _generic_stat_arch_elt */
                                            /* XCOFF archives do not have 
                                              a timestamp.  */
   bfd_true,                                /* _update_armap_timestamp */