* hppabsd-core.c (hppabsd_core_core_file_p): Use bfd_stat, not fstat.
authorAlan Modra <amodra@gmail.com>
Thu, 27 Oct 2005 03:35:30 +0000 (03:35 +0000)
committerAlan Modra <amodra@gmail.com>
Thu, 27 Oct 2005 03:35:30 +0000 (03:35 +0000)
* sco5-core.c (sco5_core_file_p): Likewise.
* trad-core.c (trad_unix_core_file_p): Likewise.

bfd/ChangeLog
bfd/hppabsd-core.c
bfd/sco5-core.c
bfd/trad-core.c

index 0a3b2484c23daef895965e930624e5c5c709e2d9..deeea7efdb39522ed49a032630ab7c28011ca7d2 100644 (file)
@@ -1,5 +1,9 @@
 2005-10-27  Alan Modra  <amodra@bigpond.net.au>
 
+       * hppabsd-core.c (hppabsd_core_core_file_p): Use bfd_stat, not fstat.
+       * sco5-core.c (sco5_core_file_p): Likewise.
+       * trad-core.c (trad_unix_core_file_p): Likewise.
+
        * cache.c: Reorganize file to avoid forward reference.
 
 2005-10-26  Alan Modra  <amodra@bigpond.net.au>
index b17acc699fcd925374674e03baa624a03bf8ef26..894d244bbc3cd4e71783d8fc4d9b8e23086d9eaa 100644 (file)
@@ -1,5 +1,5 @@
 /* BFD back-end for HPPA BSD core files.
-   Copyright 1993, 1994, 1995, 1998, 1999, 2001, 2002, 2003, 2004
+   Copyright 1993, 1994, 1995, 1998, 1999, 2001, 2002, 2003, 2004, 2005
    Free Software Foundation, Inc.
 
    This file is part of BFD, the Binary File Descriptor library.
@@ -137,16 +137,11 @@ hppabsd_core_core_file_p (abfd)
   /* Sanity checks.  Make sure the size of the core file matches the
      the size computed from information within the core itself.  */
   {
-    FILE *stream = bfd_cache_lookup (abfd);
     struct stat statbuf;
 
-    if (stream == NULL)
+    if (bfd_stat (abfd, &statbuf) < 0)
       return NULL;
-    if (fstat (fileno (stream), &statbuf) < 0)
-      {
-       bfd_set_error (bfd_error_system_call);
-       return NULL;
-      }
+
     if (NBPG * (UPAGES + u.u_dsize + u.u_ssize) > statbuf.st_size)
       {
        bfd_set_error (bfd_error_file_truncated);
index e85c4d3793c7497c6750d5ab1f0b36012b0ba74d..f09eadafe8c9a4d465caff9418f86b332a5c8ea5 100644 (file)
@@ -1,5 +1,5 @@
 /* BFD back end for SCO5 core files (U-area and raw sections)
-   Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004
+   Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
    Free Software Foundation, Inc.
    Written by Jouke Numan <jnuman@hiscom.nl>
 
@@ -126,16 +126,11 @@ sco5_core_file_p (abfd)
   /* Read coreoffsets region at end of core (see core(FP)).  */
 
   {
-    FILE *stream = bfd_cache_lookup (abfd);
     struct stat statbuf;
 
-    if (stream == NULL)
+    if (bfd_stat (abfd, &statbuf) < 0)
       return NULL;
-    if (fstat (fileno (stream), &statbuf) < 0)
-      {
-       bfd_set_error (bfd_error_system_call);
-       return NULL;
-      }
+
     coresize = statbuf.st_size;
   }
   /* Last long in core is sizeof struct coreoffsets, read it */
index c958683344a6d014fb4442a46517968fc51eeb8d..2f8c9f9ca5f80d8954a1df8e908331404b8492f9 100644 (file)
@@ -1,6 +1,6 @@
 /* BFD back end for traditional Unix core files (U-area and raw sections)
    Copyright 1988, 1989, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999,
-   2000, 2001, 2002, 2003, 2004
+   2000, 2001, 2002, 2003, 2004, 2005
    Free Software Foundation, Inc.
    Written by John Gilmore of Cygnus Support.
 
@@ -109,16 +109,11 @@ trad_unix_core_file_p (abfd)
 
   /* Check that the size claimed is no greater than the file size.  */
   {
-    FILE *stream = bfd_cache_lookup (abfd);
     struct stat statbuf;
 
-    if (stream == NULL)
+    if (bfd_stat (abfd, &statbuf) < 0)
       return 0;
-    if (fstat (fileno (stream), &statbuf) < 0)
-      {
-       bfd_set_error (bfd_error_system_call);
-       return 0;
-      }
+
     if ((unsigned long) (NBPG * (UPAGES + u.u_dsize
 #ifdef TRAD_CORE_DSIZE_INCLUDES_TSIZE
                                 - u.u_tsize