Apache HTTPD
Classes | Macros | Functions | Variables
apr_arch_file_io.h File Reference
#include "apr.h"
#include "apr_private.h"
#include "apr_pools.h"
#include "apr_general.h"
#include "apr_tables.h"
#include "apr_thread_mutex.h"
#include "apr_file_io.h"
#include "apr_file_info.h"
#include "apr_errno.h"
#include "apr_arch_misc.h"
#include "apr_poll.h"

Go to the source code of this file.

Classes

struct  apr_file_t
 
struct  apr_dir_t
 

Macros

#define APR_FILE_MAX   MAX_PATH
 
#define APR_FILE_DEFAULT_BUFSIZE   4096
 
#define APR_FILE_BUFSIZE   APR_FILE_DEFAULT_BUFSIZE
 
#define APR_OPENINFO   0x00100000 /* Open without READ or WRITE access */
 
#define APR_OPENLINK   0x00200000 /* Open a link itself, if supported */
 
#define APR_READCONTROL   0x00400000 /* Read the file's owner/perms */
 
#define APR_WRITECONTROL   0x00800000 /* Modify the file's owner/perms */
 
#define APR_STDIN_FLAG   0x02000000 /* Obtained via apr_file_open_stdin() */
 
#define APR_STDOUT_FLAG   0x04000000 /* Obtained via apr_file_open_stdout() */
 
#define APR_STDERR_FLAG   0x06000000 /* Obtained via apr_file_open_stderr() */
 
#define APR_STD_FLAGS   (APR_STDIN_FLAG | APR_STDOUT_FLAG | APR_STDERR_FLAG)
 
#define APR_WRITEATTRS   0x08000000 /* Modify the file's attributes */
 
#define FILE_ATTRIBUTE_DEVICE   0x00000040
 
#define FILE_ATTRIBUTE_REPARSE_POINT   0x00000400
 
#define FILE_FLAG_OPEN_NO_RECALL   0x00100000
 
#define FILE_FLAG_OPEN_REPARSE_POINT   0x00200000
 
#define TRUSTEE_IS_WELL_KNOWN_GROUP   5
 
#define APR_FINFO_WIN32_DIR
 
#define APR_FREADONLY   0x10000000
 
#define MORE_OF_HANDLE   0
 
#define MORE_OF_FSPEC   1
 
#define MORE_OF_WFSPEC   2
 
#define filedes   filehand
 
#define IS_FNCHAR(c)   (apr_c_is_fnchar[(unsigned char)(c)] & 1)
 
#define IS_SHCHAR(c)   ((apr_c_is_fnchar[(unsigned char)(c)] & 2) == 2)
 

Functions

void * res_name_from_filename (const char *file, int global, apr_pool_t *pool)
 
int fillin_fileinfo (apr_finfo_t *finfo, WIN32_FILE_ATTRIBUTE_DATA *wininfo, int byhandle, int finddata, const char *fname, apr_int32_t wanted)
 
apr_status_t more_finfo (apr_finfo_t *finfo, const void *ufile, apr_int32_t wanted, int whatfile)
 
apr_status_t filepath_root_test (char *path, apr_pool_t *p)
 
apr_status_t filepath_drive_get (char **rootpath, char drive, apr_int32_t flags, apr_pool_t *p)
 
apr_status_t filepath_root_case (char **rootpath, char *root, apr_pool_t *p)
 
apr_status_t file_cleanup (void *)
 
apr_status_t apr_file_socket_pipe_create (apr_file_t **in, apr_file_t **out, apr_pool_t *p)
 
apr_status_t apr_file_socket_pipe_close (apr_file_t *file)
 

Variables

const char apr_c_is_fnchar [256]
 

Macro Definition Documentation

◆ APR_FILE_BUFSIZE

#define APR_FILE_BUFSIZE   APR_FILE_DEFAULT_BUFSIZE

Definition at line 87 of file apr_arch_file_io.h.

◆ APR_FILE_DEFAULT_BUFSIZE

#define APR_FILE_DEFAULT_BUFSIZE   4096

Definition at line 85 of file apr_arch_file_io.h.

◆ APR_FILE_MAX

#define APR_FILE_MAX   MAX_PATH

Definition at line 83 of file apr_arch_file_io.h.

◆ APR_FINFO_WIN32_DIR

#define APR_FINFO_WIN32_DIR
Value:
#define APR_FINFO_ATIME
#define APR_FINFO_NAME
#define APR_FINFO_CTIME
#define APR_FINFO_MTIME
#define APR_FINFO_TYPE
#define APR_FINFO_SIZE

Definition at line 129 of file apr_arch_file_io.h.

◆ APR_FREADONLY

#define APR_FREADONLY   0x10000000

Definition at line 134 of file apr_arch_file_io.h.

◆ APR_OPENINFO

#define APR_OPENINFO   0x00100000 /* Open without READ or WRITE access */

Definition at line 99 of file apr_arch_file_io.h.

◆ APR_OPENLINK

#define APR_OPENLINK   0x00200000 /* Open a link itself, if supported */

Definition at line 100 of file apr_arch_file_io.h.

◆ APR_READCONTROL

#define APR_READCONTROL   0x00400000 /* Read the file's owner/perms */

Definition at line 101 of file apr_arch_file_io.h.

◆ APR_STD_FLAGS

Definition at line 107 of file apr_arch_file_io.h.

◆ APR_STDERR_FLAG

#define APR_STDERR_FLAG   0x06000000 /* Obtained via apr_file_open_stderr() */

Definition at line 106 of file apr_arch_file_io.h.

◆ APR_STDIN_FLAG

#define APR_STDIN_FLAG   0x02000000 /* Obtained via apr_file_open_stdin() */

Definition at line 104 of file apr_arch_file_io.h.

◆ APR_STDOUT_FLAG

#define APR_STDOUT_FLAG   0x04000000 /* Obtained via apr_file_open_stdout() */

Definition at line 105 of file apr_arch_file_io.h.

◆ APR_WRITEATTRS

#define APR_WRITEATTRS   0x08000000 /* Modify the file's attributes */

Definition at line 108 of file apr_arch_file_io.h.

◆ APR_WRITECONTROL

#define APR_WRITECONTROL   0x00800000 /* Modify the file's owner/perms */

Definition at line 102 of file apr_arch_file_io.h.

◆ FILE_ATTRIBUTE_DEVICE

#define FILE_ATTRIBUTE_DEVICE   0x00000040

Definition at line 113 of file apr_arch_file_io.h.

◆ FILE_ATTRIBUTE_REPARSE_POINT

#define FILE_ATTRIBUTE_REPARSE_POINT   0x00000400

Definition at line 116 of file apr_arch_file_io.h.

◆ FILE_FLAG_OPEN_NO_RECALL

#define FILE_FLAG_OPEN_NO_RECALL   0x00100000

Definition at line 119 of file apr_arch_file_io.h.

◆ FILE_FLAG_OPEN_REPARSE_POINT

#define FILE_FLAG_OPEN_REPARSE_POINT   0x00200000

Definition at line 122 of file apr_arch_file_io.h.

◆ filedes

#define filedes   filehand

Definition at line 160 of file apr_arch_file_io.h.

◆ IS_FNCHAR

#define IS_FNCHAR (   c)    (apr_c_is_fnchar[(unsigned char)(c)] & 1)

Definition at line 223 of file apr_arch_file_io.h.

◆ IS_SHCHAR

#define IS_SHCHAR (   c)    ((apr_c_is_fnchar[(unsigned char)(c)] & 2) == 2)

Definition at line 224 of file apr_arch_file_io.h.

◆ MORE_OF_FSPEC

#define MORE_OF_FSPEC   1

Definition at line 147 of file apr_arch_file_io.h.

◆ MORE_OF_HANDLE

#define MORE_OF_HANDLE   0

Definition at line 146 of file apr_arch_file_io.h.

◆ MORE_OF_WFSPEC

#define MORE_OF_WFSPEC   2

Definition at line 148 of file apr_arch_file_io.h.

◆ TRUSTEE_IS_WELL_KNOWN_GROUP

#define TRUSTEE_IS_WELL_KNOWN_GROUP   5

Definition at line 125 of file apr_arch_file_io.h.

Function Documentation

◆ apr_file_socket_pipe_close()

apr_status_t apr_file_socket_pipe_close ( apr_file_t file)
extern

Definition at line 470 of file pipe.c.

◆ apr_file_socket_pipe_create()

apr_status_t apr_file_socket_pipe_create ( apr_file_t **  in,
apr_file_t **  out,
apr_pool_t p 
)
extern

Definition at line 423 of file pipe.c.

◆ file_cleanup()

apr_status_t file_cleanup ( void *  thefile)

Definition at line 277 of file open.c.

◆ filepath_drive_get()

apr_status_t filepath_drive_get ( char **  rootpath,
char  drive,
apr_int32_t  flags,
apr_pool_t p 
)

Definition at line 66 of file filesys.c.

◆ filepath_root_case()

apr_status_t filepath_root_case ( char **  rootpath,
char root,
apr_pool_t p 
)

Definition at line 21 of file filesys.c.

◆ filepath_root_test()

apr_status_t filepath_root_test ( char path,
apr_pool_t p 
)

Definition at line 55 of file filesys.c.

◆ fillin_fileinfo()

int fillin_fileinfo ( apr_finfo_t finfo,
WIN32_FILE_ATTRIBUTE_DATA wininfo,
int  byhandle,
int  finddata,
const char fname,
apr_int32_t  wanted 
)

< Stat the link not the file itself if it is a link

< Access Time

< Creation or inode-changed time

< Modification Time

< Size of the file

< Type

< Stat the link not the file itself if it is a link

< Stat the link not the file itself if it is a link

Definition at line 417 of file filestat.c.

◆ more_finfo()

apr_status_t more_finfo ( apr_finfo_t finfo,
const void *  ufile,
apr_int32_t  wanted,
int  whatfile 
)

< all protections

< user and group

< User

< User protection bits

< Group

< Group protection bits

< all protections

< User

< User protection bits

< Group

< Group protection bits

< all protections

< User

< User protection bits

< Group

< Group protection bits

< all protections

< User

< User protection bits

< Group

< Group protection bits

< all protections

< User

< Group

< all protections

< Storage size consumed by the file

< Storage size consumed by the file

< Storage size consumed by the file

Definition at line 278 of file filestat.c.

◆ res_name_from_filename()

void * res_name_from_filename ( const char file,
int  global,
apr_pool_t pool 
)

Definition at line 140 of file open.c.

Variable Documentation

◆ apr_c_is_fnchar

const char apr_c_is_fnchar[256]
extern

Definition at line 49 of file filesys.c.