|
Apache HTTPD
|
Classes | |
| struct | apr_finfo_t |
Macros | |
| #define | APR_FINFO_LINK 0x00000001 |
| #define | APR_FINFO_MTIME 0x00000010 |
| #define | APR_FINFO_CTIME 0x00000020 |
| #define | APR_FINFO_ATIME 0x00000040 |
| #define | APR_FINFO_SIZE 0x00000100 |
| #define | APR_FINFO_CSIZE 0x00000200 |
| #define | APR_FINFO_DEV 0x00001000 |
| #define | APR_FINFO_INODE 0x00002000 |
| #define | APR_FINFO_NLINK 0x00004000 |
| #define | APR_FINFO_TYPE 0x00008000 |
| #define | APR_FINFO_USER 0x00010000 |
| #define | APR_FINFO_GROUP 0x00020000 |
| #define | APR_FINFO_UPROT 0x00100000 |
| #define | APR_FINFO_GPROT 0x00200000 |
| #define | APR_FINFO_WPROT 0x00400000 |
| #define | APR_FINFO_ICASE 0x01000000 |
| #define | APR_FINFO_NAME 0x02000000 |
| #define | APR_FINFO_MIN 0x00008170 |
| #define | APR_FINFO_IDENT 0x00003000 |
| #define | APR_FINFO_OWNER 0x00030000 |
| #define | APR_FINFO_PROT 0x00700000 |
| #define | APR_FINFO_NORM 0x0073b170 |
| #define | APR_FINFO_DIRENT 0x02000000 |
Typedefs | |
| typedef struct apr_finfo_t | apr_finfo_t |
Functions | |
| APR_DECLARE (apr_status_t) apr_stat(apr_finfo_t *finfo | |
Variables | |
| const char * | fname |
| const char apr_int32_t | wanted |
| const char apr_int32_t apr_pool_t * | pool |
| #define APR_FINFO_ATIME 0x00000040 |
Access Time
Definition at line 148 of file apr_file_info.h.
| #define APR_FINFO_CSIZE 0x00000200 |
Storage size consumed by the file
Definition at line 150 of file apr_file_info.h.
| #define APR_FINFO_CTIME 0x00000020 |
Creation or inode-changed time
Definition at line 147 of file apr_file_info.h.
| #define APR_FINFO_DEV 0x00001000 |
Device
Definition at line 151 of file apr_file_info.h.
| #define APR_FINFO_DIRENT 0x02000000 |
an atomic unix apr_dir_read()
Definition at line 168 of file apr_file_info.h.
| #define APR_FINFO_GPROT 0x00200000 |
Group protection bits
Definition at line 158 of file apr_file_info.h.
| #define APR_FINFO_GROUP 0x00020000 |
Group
Definition at line 156 of file apr_file_info.h.
| #define APR_FINFO_ICASE 0x01000000 |
if dev is case insensitive
Definition at line 160 of file apr_file_info.h.
| #define APR_FINFO_IDENT 0x00003000 |
dev and inode
Definition at line 164 of file apr_file_info.h.
| #define APR_FINFO_INODE 0x00002000 |
Inode
Definition at line 152 of file apr_file_info.h.
| #define APR_FINFO_LINK 0x00000001 |
Stat the link not the file itself if it is a link
Definition at line 145 of file apr_file_info.h.
| #define APR_FINFO_MIN 0x00008170 |
type, mtime, ctime, atime, size
Definition at line 163 of file apr_file_info.h.
| #define APR_FINFO_MTIME 0x00000010 |
Modification Time
Definition at line 146 of file apr_file_info.h.
| #define APR_FINFO_NAME 0x02000000 |
->name in proper case
Definition at line 161 of file apr_file_info.h.
| #define APR_FINFO_NLINK 0x00004000 |
Number of links
Definition at line 153 of file apr_file_info.h.
| #define APR_FINFO_NORM 0x0073b170 |
an atomic unix apr_stat()
Definition at line 167 of file apr_file_info.h.
| #define APR_FINFO_OWNER 0x00030000 |
user and group
Definition at line 165 of file apr_file_info.h.
| #define APR_FINFO_PROT 0x00700000 |
all protections
Definition at line 166 of file apr_file_info.h.
| #define APR_FINFO_SIZE 0x00000100 |
Size of the file
Definition at line 149 of file apr_file_info.h.
| #define APR_FINFO_TYPE 0x00008000 |
Type
Definition at line 154 of file apr_file_info.h.
| #define APR_FINFO_UPROT 0x00100000 |
User protection bits
Definition at line 157 of file apr_file_info.h.
| #define APR_FINFO_USER 0x00010000 |
User
Definition at line 155 of file apr_file_info.h.
| #define APR_FINFO_WPROT 0x00400000 |
World protection bits
Definition at line 159 of file apr_file_info.h.
file info structure
Definition at line 143 of file apr_file_info.h.
| APR_DECLARE | ( | apr_status_t | ) |
get the specified file's stats. The file is specified by filename, instead of using a pre-opened file.
| finfo | Where to store the information about the file, which is never touched if the call fails. |
| fname | The name of the file to stat. |
| wanted | The desired apr_finfo_t fields, as a bit flag of APR_FINFO_ values |
| pool | the pool to use to allocate the new file. |
APR_INCOMPLETE is returned all the fields in finfo may not be filled in, and you need to check the finfo->valid bitmask to verify that what you're looking for is there.Open the specified directory.
| new_dir | The opened directory descriptor. |
| dirname | The full path to the directory (use / on all systems) |
| pool | The pool to use. |
close the specified directory.
| thedir | the directory descriptor to close. |
Read the next entry from the specified directory.
| finfo | the file info structure and filled in by apr_dir_read |
| wanted | The desired apr_finfo_t fields, as a bit flag of APR_FINFO_ values |
| thedir | the directory descriptor returned from apr_dir_open |
APR_INCOMPLETE is returned all the fields in finfo may not be filled in, and you need to check the finfo->valid bitmask to verify that what you're looking for is there. When no more entries are available, APR_ENOENT is returned.Rewind the directory to the first entry.
| thedir | the directory descriptor to rewind. |
Extract the rootpath from the given filepath
| rootpath | the root file path returned with APR_SUCCESS or APR_EINCOMPLETE |
| filepath | the pathname to parse for its root component |
| flags | the desired rules to apply, from
APR_FILEPATH_NATIVE Use native path separators (e.g. '\' on Win32)
APR_FILEPATH_TRUENAME Tests that the root exists, and makes it proper
|
| p | the pool to allocate the new path string from |
Merge additional file path onto the previously processed rootpath
| newpath | the merged paths returned |
| rootpath | the root file path (NULL uses the current working path) |
| addpath | the path to add to the root path |
| flags | the desired APR_FILEPATH_ rules to apply when merging |
| p | the pool to allocate the new path string from |
Split a search path into separate components
| pathelts | the returned components of the search path |
| liststr | the search path (e.g., getenv("PATH")) |
| p | the pool to allocate the array and path components from |
Merge a list of search path components into a single search path
| liststr | the returned search path; may be NULL if pathelts is empty |
| pathelts | the components of the search path |
| p | the pool to allocate the search path from |
Return the default file path (for relative file names)
| path | the default path string returned |
| flags | optional flag APR_FILEPATH_NATIVE to retrieve the default file path in os-native format. |
| p | the pool to allocate the default path string from |
Set the default file path (for relative file names)
| path | the default path returned |
| p | the pool to allocate any working storage |
Determine the encoding used internally by the FilePath functions
| style | points to a variable which receives the encoding style flag |
| p | the pool to allocate any working storage |
< File is read-only
< File is executable
< all protections
< File is read-only
< File is read-only
< Write by user
<
< Write by group
<
< Write by others
<
< Write by user
<
< Write by group
<
< Write by others
<
< File is executable
< File is executable
< Execute by user
<
< Execute by group
<
< Execute by others
<
< Execute by user
<
< Execute by group
<
< Execute by others
<
< Stat the link not the file itself if it is a link
< Stat the link not the file itself if it is a link
< ->name in proper case
< ->name in proper case
< Access Time
< Create the file if not there
< Open the file for reading
< Open the file for writing
< Delete the file after close
< Open should fail if APR_FOPEN_CREATE and file exists.
< Do not register a cleanup when the file is opened. The apr_os_file_t handle in apr_file_t will not be closed when the pool is destroyed.
< Read by user
<
< Write by user
<
< Do not register a cleanup when the file is opened. The apr_os_file_t handle in apr_file_t will not be closed when the pool is destroyed.
< Do not register a cleanup when the file is opened. The apr_os_file_t handle in apr_file_t will not be closed when the pool is destroyed.
< ->name in proper case
< Modification Time
< Access Time
< Creation or inode-changed time
< Type
< Size of the file
< Storage size consumed by the file
< Do not register a cleanup when the file is opened. The apr_os_file_t handle in apr_file_t will not be closed when the pool is destroyed.
< ->name in proper case
< ->name in proper case
< Type
< all protections
< ->name in proper case
< ->name in proper case
< File is read-only
< File is hidden
< File is read-only
< File is read-only
< File is hidden
< File is hidden
< Platform dependent flag to enable * non blocking file io
< Open the file for reading
< Open the file for writing
< Open the file for reading
< Open the file for writing
< Open the file for buffered I/O
< Create the file if not there
< Open should fail if APR_FOPEN_CREATE and file exists.
< Open the file and truncate to 0 length
< Open should fail if APR_FOPEN_CREATE and file exists.
< Create the file if not there
< Open the file and truncate to 0 length
< Append to the end of the file
< Do not register a cleanup when the file is opened. The apr_os_file_t handle in apr_file_t will not be closed when the pool is destroyed.
< Delete the file after close
< Open the file for buffered I/O
< Open the file for writing
< Open the file for writing
< Open the file for reading
< Append to the end of the file
< an atomic unix apr_stat()
< Open the file for writing
< Create the file if not there
< Open the file and truncate to 0 length
< Open the file for writing
< Create the file if not there
< Append to the end of the file
< Do not register a cleanup when the file is opened. The apr_os_file_t handle in apr_file_t will not be closed when the pool is destroyed.
< File is read-only
< File is executable
< all protections
< File is read-only
< File is read-only
< Write by user
<
< Write by group
<
< Write by others
<
< Write by user
<
< Write by group
<
< Write by others
<
< File is executable
< File is executable
< Execute by user
<
< Execute by group
<
< Execute by others
<
< Execute by user
<
< Execute by group
<
< Execute by others
<
< Access Time
< Stat the link not the file itself if it is a link
< Stat the link not the file itself if it is a link
< Stat the link not the file itself if it is a link
< Create the file if not there
< Open the file for reading
< Open the file for writing
< Open should fail if APR_FOPEN_CREATE and file exists.
< Delete the file after close
< Open the file for reading
< Open the file for writing
< Open the file for reading
< Open the file for writing
< Create the file if not there
< Open should fail if APR_FOPEN_CREATE and file exists.
< Open should fail if APR_FOPEN_CREATE and file exists.
< Create the file if not there
< Append to the end of the file
< Open the file and truncate to 0 length
< Platform dependent flag to enable * non blocking file io
< use OS's default permissions
<
< Do not register a cleanup when the file is opened. The apr_os_file_t handle in apr_file_t will not be closed when the pool is destroyed.
< Open the file for buffered I/O
< Do not register a cleanup when the file is opened. The apr_os_file_t handle in apr_file_t will not be closed when the pool is destroyed.
< Do not register a cleanup when the file is opened. The apr_os_file_t handle in apr_file_t will not be closed when the pool is destroyed.
< Open the file for buffered I/O
< Open the file for writing
< Open the file for writing
< Open the file for reading
< Do not register a cleanup when the file is opened. The apr_os_file_t handle in apr_file_t will not be closed when the pool is destroyed.
< Do not register a cleanup when the file is opened. The apr_os_file_t handle in apr_file_t will not be closed when the pool is destroyed.
The problem with trying to output the entire iovec is that we cannot maintain the behaviour that a real writev would have. If we iterate over the iovec one at a time, we lose the atomic properties of writev(). The other option is to combine the entire iovec into one buffer that we could then send in one call to write(). This is not reasonable since we do not know how much data an iovec could contain.
The only reasonable option, that maintains the semantics of a real writev(), is to only write the first iovec. Callers of file_writev() must deal with partial writes as they normally would. If you want to ensure an entire iovec is written, use apr_file_writev_full().
< ->name in proper case
< Do not register a cleanup when the file is opened. The apr_os_file_t handle in apr_file_t will not be closed when the pool is destroyed.
< Size of the file
< Size of the file
< dev and inode
< Number of links
< ->name in proper case
< Type
< Type
< ->name in proper case
< File is read-only
< File is hidden
< File is read-only
< File is read-only
< File is hidden
< File is hidden
< Open the file for reading
< use OS's default permissions
<
< Platform dependent flag to enable * non blocking file io
< Open the file for reading
< Open the file for writing
< Create the file if not there
< Open should fail if APR_FOPEN_CREATE and file exists.
< Open the file and truncate to 0 length
< Open the file and truncate to 0 length
< Open should fail if APR_FOPEN_CREATE and file exists.
< Create the file if not there
< Delete the file after close
< Open the file for reading
< Open the file for writing
< Platform dependent tag to open the file for use across multiple threads
< Append to the end of the file
< Open the file for buffered I/O
< Platform dependent flag to enable * sparse file support, see WARNING below
< Do not register a cleanup when the file is opened. The apr_os_file_t handle in apr_file_t will not be closed when the pool is destroyed.
< Append to the end of the file
< Open the file for buffered I/O
< Open the file for writing
< Open the file for writing
< Open the file for reading
< Platform dependent tag to open the file for use across multiple threads
< Platform dependent tag to open the file for use across multiple threads
< Platform dependent tag to open the file for use across multiple threads
< Platform dependent tag to open the file for use across multiple threads
< Platform dependent tag to open the file for use across multiple threads
< Platform dependent tag to open the file for use across multiple threads
< Exclusive lock. Only one process may hold an exclusive lock at any given time. This is analogous to a "write lock".
< Platform dependent tag to open the file for use across multiple threads
< Platform dependent tag to open the file for use across multiple threads
< Platform dependent tag to open the file for use across multiple threads
< Platform dependent tag to open the file for use across multiple threads
< Size of the file
< Platform dependent tag to open the file for use across multiple threads
< Size of the file
Definition at line 74 of file apr_atomic.c.
Definition at line 229 of file apr_file_info.h.
| const char apr_pool_t* pool |
Definition at line 230 of file apr_file_info.h.
| apr_int32_t wanted |
Definition at line 230 of file apr_file_info.h.