From 7e2ef17887522f7eeaf8ee672906cd9837ea9ac6 Mon Sep 17 00:00:00 2001 From: Tim Kientzle Date: Sat, 10 May 2008 23:27:22 +0000 Subject: MFC: FreeBSD does have fstat() and libarchive should use it (it reduces some races). But I need to fix a typo in the one use of fstat() first. --- lib/libarchive/archive_write_disk.c | 2 +- lib/libarchive/config_freebsd.h | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) (limited to 'lib/libarchive') diff --git a/lib/libarchive/archive_write_disk.c b/lib/libarchive/archive_write_disk.c index d3dfa68d2ca3..394df80525cb 100644 --- a/lib/libarchive/archive_write_disk.c +++ b/lib/libarchive/archive_write_disk.c @@ -1611,7 +1611,7 @@ set_mode(struct archive_write_disk *a, int mode) if (a->pst != NULL) { /* Already have stat() data available. */ #ifdef HAVE_FSTAT - } else if (fd >= 0 && fstat(fd, &a->st) == 0) { + } else if (a->fd >= 0 && fstat(a->fd, &a->st) == 0) { a->pst = &a->st; #endif } else if (stat(a->name, &a->st) == 0) { diff --git a/lib/libarchive/config_freebsd.h b/lib/libarchive/config_freebsd.h index 271e85716875..6dddb0f9b0d1 100644 --- a/lib/libarchive/config_freebsd.h +++ b/lib/libarchive/config_freebsd.h @@ -53,8 +53,10 @@ #define HAVE_FCHOWN 1 #define HAVE_FCNTL_H 1 #define HAVE_FSEEKO 1 +#define HAVE_FSTAT 1 #define HAVE_FUTIMES 1 #define HAVE_GETEUID 1 +#define HAVE_GETPID 1 #define HAVE_GRP_H 1 #define HAVE_INTTYPES_H 1 #define HAVE_LCHFLAGS 1 -- cgit v1.3