17#include "apr_arch_file_io.h"
46#if !defined(BEOS) && defined(S_IFSOCK)
55#if !defined(S_IFFIFO) && defined(S_ISFIFO)
60#if !defined(BEOS) && !defined(S_IFSOCK) && defined(S_ISSOCK)
93#ifdef HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC
95#elif defined(HAVE_STRUCT_STAT_ST_ATIMENSEC)
97#elif defined(HAVE_STRUCT_STAT_ST_ATIME_N)
102#ifdef HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC
104#elif defined(HAVE_STRUCT_STAT_ST_MTIMENSEC)
106#elif defined(HAVE_STRUCT_STAT_ST_MTIME_N)
111#ifdef HAVE_STRUCT_STAT_ST_CTIM_TV_NSEC
113#elif defined(HAVE_STRUCT_STAT_ST_CTIMENSEC)
115#elif defined(HAVE_STRUCT_STAT_ST_CTIME_N)
119#ifdef HAVE_STRUCT_STAT_ST_BLOCKS
265#elif defined(HAVE_UTIME)
305#if !defined(ENOENT) || !defined(ENOTDIR)
306#error ENOENT || ENOTDIR not defined; please see the
307#error comments at this line in the source for a workaround.
APR Miscellaneous library routines.
const unsigned char * buf
apr_dbd_transaction_t int mode
const void apr_status_t(*) apr_status_t(* APR_DECLARE)(void) apr_pool_pre_cleanup_register(apr_pool_t *p
const char int apr_pool_t * pool
#define APR_FILE_ATTR_READONLY
#define APR_FILE_ATTR_EXECUTABLE
apr_int32_t apr_fileperms_t
apr_uint32_t apr_fileattrs_t
const char apr_fileperms_t perms
apr_fileattrs_t attributes
apr_fileattrs_t apr_fileattrs_t attr_mask
const char apr_int32_t wanted
#define apr_time_sec(time)
#define apr_time_usec(time)
static void fill_out_finfo(apr_finfo_t *finfo, struct stat *info, apr_int32_t wanted)
static apr_filetype_e filetype_from_mode(mode_t mode)
apr_status_t apr_file_info_get_locked(apr_finfo_t *finfo, apr_int32_t wanted, apr_file_t *thefile)
apr_fileperms_t protection
mode_t apr_unix_perms2mode(apr_fileperms_t perms)
apr_fileperms_t apr_unix_mode2perms(mode_t mode)
apr_status_t apr_file_flush_locked(apr_file_t *thefile)