Sophie

Sophie

distrib > Mageia > 6 > x86_64 > by-pkgid > 8304a303b9546a4919a1b507a88742d9 > files > 208

lib64apr-devel-1.5.2-2.1.mga6.x86_64.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Apache Portable Runtime: File I/O Handling Functions</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Apache Portable Runtime
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#groups">Modules</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">File I/O Handling Functions<div class="ingroups"><a class="el" href="group___a_p_r.html">Apache Portability Runtime library</a></div></div>  </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="groups"></a>
Modules</h2></td></tr>
<tr class="memitem:group__apr__file__open__flags"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__open__flags.html">File Open Flags/Routines</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:group__apr__file__seek__flags"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__seek__flags.html">File Seek Flags</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:group__apr__file__attrs__set__flags"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__attrs__set__flags.html">File Attribute Flags</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:group__apr__file__writev"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__writev.html">{_full} max iovec size</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:group__apr__file__lock__types"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__lock__types.html">File Lock Types</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ga11fbee5a7a3f3d45fff5c31df0db9737"><td class="memItemLeft" align="right" valign="top">typedef apr_uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga11fbee5a7a3f3d45fff5c31df0db9737">apr_fileattrs_t</a></td></tr>
<tr class="separator:ga11fbee5a7a3f3d45fff5c31df0db9737"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8eecd44975906042e0e369771802a145"><td class="memItemLeft" align="right" valign="top">typedef int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga8eecd44975906042e0e369771802a145">apr_seek_where_t</a></td></tr>
<tr class="separator:ga8eecd44975906042e0e369771802a145"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa46e4763ac375ea3c7a43ba6f6099e22"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a></td></tr>
<tr class="separator:gaa46e4763ac375ea3c7a43ba6f6099e22"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gabda14cbf242fb4fe99055434213e5446"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gabda14cbf242fb4fe99055434213e5446">apr_file_open</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **newf, const char *fname, apr_int32_t flag, <a class="el" href="group__apr__file__info.html#ga3af19c4c47007169064a70f9351bc7d8">apr_fileperms_t</a> perm, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:gabda14cbf242fb4fe99055434213e5446"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5607bce1c4c798ceb6c8475a998a81a1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga5607bce1c4c798ceb6c8475a998a81a1">apr_file_close</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *file)</td></tr>
<tr class="separator:ga5607bce1c4c798ceb6c8475a998a81a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga211c40be82f8bf8b8d7dce5afca5500b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga211c40be82f8bf8b8d7dce5afca5500b">apr_file_remove</a> (const char *path, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:ga211c40be82f8bf8b8d7dce5afca5500b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga29b5633bb80226baa5de79a83c6999aa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga29b5633bb80226baa5de79a83c6999aa">apr_file_rename</a> (const char *from_path, const char *to_path, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:ga29b5633bb80226baa5de79a83c6999aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa7911275c0e97edc064b8167be658f9e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gaa7911275c0e97edc064b8167be658f9e">apr_file_link</a> (const char *from_path, const char *to_path)</td></tr>
<tr class="separator:gaa7911275c0e97edc064b8167be658f9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2b82c441246cc4596795420b0a94a9a2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga2b82c441246cc4596795420b0a94a9a2">apr_file_copy</a> (const char *from_path, const char *to_path, <a class="el" href="group__apr__file__info.html#ga3af19c4c47007169064a70f9351bc7d8">apr_fileperms_t</a> perms, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:ga2b82c441246cc4596795420b0a94a9a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0b9bc41ffa4ac43cbea46b44eace939e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga0b9bc41ffa4ac43cbea46b44eace939e">apr_file_append</a> (const char *from_path, const char *to_path, <a class="el" href="group__apr__file__info.html#ga3af19c4c47007169064a70f9351bc7d8">apr_fileperms_t</a> perms, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:ga0b9bc41ffa4ac43cbea46b44eace939e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8efaff2f556b250fee1021541b782ea8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga8efaff2f556b250fee1021541b782ea8">apr_file_eof</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *fptr)</td></tr>
<tr class="separator:ga8efaff2f556b250fee1021541b782ea8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf426d98943319acced2c9b52757f377f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gaf426d98943319acced2c9b52757f377f">apr_file_open_stderr</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **thefile, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:gaf426d98943319acced2c9b52757f377f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0d36922c0944ff9675cc820e68d56199"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga0d36922c0944ff9675cc820e68d56199">apr_file_open_stdout</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **thefile, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:ga0d36922c0944ff9675cc820e68d56199"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga539454470148f9b22a31f85936a5f8b4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga539454470148f9b22a31f85936a5f8b4">apr_file_open_stdin</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **thefile, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:ga539454470148f9b22a31f85936a5f8b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6e87d695994e236dae3d428ed68886bf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga6e87d695994e236dae3d428ed68886bf">apr_file_open_flags_stderr</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **thefile, apr_int32_t flags, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:ga6e87d695994e236dae3d428ed68886bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaeda353505bc1dc46db93b0a80d0b1c4c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gaeda353505bc1dc46db93b0a80d0b1c4c">apr_file_open_flags_stdout</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **thefile, apr_int32_t flags, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:gaeda353505bc1dc46db93b0a80d0b1c4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3bde3e61454b5604077f297b1d1671c0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga3bde3e61454b5604077f297b1d1671c0">apr_file_open_flags_stdin</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **thefile, apr_int32_t flags, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:ga3bde3e61454b5604077f297b1d1671c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadd067ee0050dff0c03a9420c9d424466"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gadd067ee0050dff0c03a9420c9d424466">apr_file_read</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile, void *buf, apr_size_t *nbytes)</td></tr>
<tr class="separator:gadd067ee0050dff0c03a9420c9d424466"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2e4baa94102c363fdca3c850375d3584"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga2e4baa94102c363fdca3c850375d3584">apr_file_write</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile, const void *buf, apr_size_t *nbytes)</td></tr>
<tr class="separator:ga2e4baa94102c363fdca3c850375d3584"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacc7924dd7af1c2948b5b2ea6e5f77984"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gacc7924dd7af1c2948b5b2ea6e5f77984">apr_file_writev</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile, const struct iovec *vec, apr_size_t nvec, apr_size_t *nbytes)</td></tr>
<tr class="separator:gacc7924dd7af1c2948b5b2ea6e5f77984"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf39a17404e868808aff8e2e7ecaa87e0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gaf39a17404e868808aff8e2e7ecaa87e0">apr_file_read_full</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile, void *buf, apr_size_t nbytes, apr_size_t *bytes_read)</td></tr>
<tr class="separator:gaf39a17404e868808aff8e2e7ecaa87e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga560d5c062d65e64c07d906d1207337d4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga560d5c062d65e64c07d906d1207337d4">apr_file_write_full</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile, const void *buf, apr_size_t nbytes, apr_size_t *bytes_written)</td></tr>
<tr class="separator:ga560d5c062d65e64c07d906d1207337d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga24457e11f0db908b21b7e1742db4ed7b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga24457e11f0db908b21b7e1742db4ed7b">apr_file_writev_full</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile, const struct iovec *vec, apr_size_t nvec, apr_size_t *nbytes)</td></tr>
<tr class="separator:ga24457e11f0db908b21b7e1742db4ed7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga33e51b53194e7c0dac513ca27ca18e63"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga33e51b53194e7c0dac513ca27ca18e63">apr_file_putc</a> (char ch, <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile)</td></tr>
<tr class="separator:ga33e51b53194e7c0dac513ca27ca18e63"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga852b9c77d4223af15d8d3674a0e2714d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga852b9c77d4223af15d8d3674a0e2714d">apr_file_getc</a> (char *ch, <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile)</td></tr>
<tr class="separator:ga852b9c77d4223af15d8d3674a0e2714d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9d06778e719d596ab96bca812b01cb3a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga9d06778e719d596ab96bca812b01cb3a">apr_file_ungetc</a> (char ch, <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile)</td></tr>
<tr class="separator:ga9d06778e719d596ab96bca812b01cb3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf9513b769c10b09e5f37d6d0b86bdce9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gaf9513b769c10b09e5f37d6d0b86bdce9">apr_file_gets</a> (char *str, int len, <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile)</td></tr>
<tr class="separator:gaf9513b769c10b09e5f37d6d0b86bdce9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacde81145cc38660a1512d469886ddb16"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gacde81145cc38660a1512d469886ddb16">apr_file_puts</a> (const char *str, <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile)</td></tr>
<tr class="separator:gacde81145cc38660a1512d469886ddb16"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga68aba780b7fc53e47404bfd8def949bc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga68aba780b7fc53e47404bfd8def949bc">apr_file_flush</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile)</td></tr>
<tr class="separator:ga68aba780b7fc53e47404bfd8def949bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4385e141c4bbb96294acd7d342f138da"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga4385e141c4bbb96294acd7d342f138da">apr_file_sync</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile)</td></tr>
<tr class="separator:ga4385e141c4bbb96294acd7d342f138da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa4b4e5027c1d8dbe4e5cb47b8eebc03b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gaa4b4e5027c1d8dbe4e5cb47b8eebc03b">apr_file_datasync</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile)</td></tr>
<tr class="separator:gaa4b4e5027c1d8dbe4e5cb47b8eebc03b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6e849af1b0fd31669c58a803fcb13837"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga6e849af1b0fd31669c58a803fcb13837">apr_file_dup</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **new_file, <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *old_file, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *p)</td></tr>
<tr class="separator:ga6e849af1b0fd31669c58a803fcb13837"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga602926aad867088297e8f59490ff939c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga602926aad867088297e8f59490ff939c">apr_file_dup2</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *new_file, <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *old_file, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *p)</td></tr>
<tr class="separator:ga602926aad867088297e8f59490ff939c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadaf046ce39aa118dab921a407446355b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gadaf046ce39aa118dab921a407446355b">apr_file_setaside</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **new_file, <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *old_file, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *p)</td></tr>
<tr class="separator:gadaf046ce39aa118dab921a407446355b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafe4be8c3b62c42535b84d4237bf6e421"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gafe4be8c3b62c42535b84d4237bf6e421">apr_file_buffer_set</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile, char *buffer, apr_size_t bufsize)</td></tr>
<tr class="separator:gafe4be8c3b62c42535b84d4237bf6e421"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga42bbb9227095686ea15eb79f99d248a2"><td class="memItemLeft" align="right" valign="top">apr_size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga42bbb9227095686ea15eb79f99d248a2">apr_file_buffer_size_get</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile)</td></tr>
<tr class="separator:ga42bbb9227095686ea15eb79f99d248a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9db84bec24db97a53890df1a6aff63a1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga9db84bec24db97a53890df1a6aff63a1">apr_file_seek</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile, <a class="el" href="group__apr__file__io.html#ga8eecd44975906042e0e369771802a145">apr_seek_where_t</a> where, apr_off_t *offset)</td></tr>
<tr class="separator:ga9db84bec24db97a53890df1a6aff63a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaae3b81342d239c58c351cf11190740ed"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gaae3b81342d239c58c351cf11190740ed">apr_file_pipe_create</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **in, <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **out, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:gaae3b81342d239c58c351cf11190740ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2fbbae715bee0e0ca9adadd66ac65e96"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga2fbbae715bee0e0ca9adadd66ac65e96">apr_file_pipe_create_ex</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **in, <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **out, apr_int32_t blocking, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:ga2fbbae715bee0e0ca9adadd66ac65e96"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga60cec3e6717bab0f11577bd7c38b4c59"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga60cec3e6717bab0f11577bd7c38b4c59">apr_file_namedpipe_create</a> (const char *filename, <a class="el" href="group__apr__file__info.html#ga3af19c4c47007169064a70f9351bc7d8">apr_fileperms_t</a> perm, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:ga60cec3e6717bab0f11577bd7c38b4c59"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga90e481207a38df04818a0c55883ee953"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga90e481207a38df04818a0c55883ee953">apr_file_pipe_timeout_get</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thepipe, <a class="el" href="group__apr__time.html#gaae2129185a395cc393f76fabf4f43e47">apr_interval_time_t</a> *timeout)</td></tr>
<tr class="separator:ga90e481207a38df04818a0c55883ee953"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf88d2fca768e3fa9f28ea010e1bf602a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gaf88d2fca768e3fa9f28ea010e1bf602a">apr_file_pipe_timeout_set</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thepipe, <a class="el" href="group__apr__time.html#gaae2129185a395cc393f76fabf4f43e47">apr_interval_time_t</a> timeout)</td></tr>
<tr class="separator:gaf88d2fca768e3fa9f28ea010e1bf602a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2d337e66c1fa0cd433164079bf542484"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga2d337e66c1fa0cd433164079bf542484">apr_file_lock</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile, int type)</td></tr>
<tr class="separator:ga2d337e66c1fa0cd433164079bf542484"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3a255996fb439b6d66ed7cd65319525b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga3a255996fb439b6d66ed7cd65319525b">apr_file_unlock</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile)</td></tr>
<tr class="separator:ga3a255996fb439b6d66ed7cd65319525b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5c750a88fe1e032e1d85d3db40d9519f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga5c750a88fe1e032e1d85d3db40d9519f">apr_file_name_get</a> (const char **new_path, <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile)</td></tr>
<tr class="separator:ga5c750a88fe1e032e1d85d3db40d9519f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafa13b7024748a7e45344d6998ddbd281"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gafa13b7024748a7e45344d6998ddbd281">apr_file_data_get</a> (void **data, const char *key, <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *file)</td></tr>
<tr class="separator:gafa13b7024748a7e45344d6998ddbd281"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga58c857162593d8b3aa999df5b7af0805"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga58c857162593d8b3aa999df5b7af0805">apr_file_data_set</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *file, void *data, const char *key, <a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>(*cleanup)(void *))</td></tr>
<tr class="separator:ga58c857162593d8b3aa999df5b7af0805"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga29fca4b0201c236856fea5578f410c0e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga29fca4b0201c236856fea5578f410c0e">apr_file_printf</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *fptr, const char *format,...)</td></tr>
<tr class="separator:ga29fca4b0201c236856fea5578f410c0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac5fed6d75597476718c40fc603823b1e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gac5fed6d75597476718c40fc603823b1e">apr_file_perms_set</a> (const char *fname, <a class="el" href="group__apr__file__info.html#ga3af19c4c47007169064a70f9351bc7d8">apr_fileperms_t</a> perms)</td></tr>
<tr class="separator:gac5fed6d75597476718c40fc603823b1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga96ceec3492ad0c75d2b58c167087ee6a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga96ceec3492ad0c75d2b58c167087ee6a">apr_file_attrs_set</a> (const char *fname, <a class="el" href="group__apr__file__io.html#ga11fbee5a7a3f3d45fff5c31df0db9737">apr_fileattrs_t</a> attributes, <a class="el" href="group__apr__file__io.html#ga11fbee5a7a3f3d45fff5c31df0db9737">apr_fileattrs_t</a> attr_mask, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:ga96ceec3492ad0c75d2b58c167087ee6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga79f58458a00a4072622005c09ed8f96f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga79f58458a00a4072622005c09ed8f96f">apr_file_mtime_set</a> (const char *fname, <a class="el" href="group__apr__time.html#gadb4bde16055748190eae190c55aa02bb">apr_time_t</a> mtime, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:ga79f58458a00a4072622005c09ed8f96f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga51e0b4703c7561f72587982808985d29"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga51e0b4703c7561f72587982808985d29">apr_dir_make</a> (const char *path, <a class="el" href="group__apr__file__info.html#ga3af19c4c47007169064a70f9351bc7d8">apr_fileperms_t</a> perm, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:ga51e0b4703c7561f72587982808985d29"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6a3b2602f57ff148cd64096da02adbd2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga6a3b2602f57ff148cd64096da02adbd2">apr_dir_make_recursive</a> (const char *path, <a class="el" href="group__apr__file__info.html#ga3af19c4c47007169064a70f9351bc7d8">apr_fileperms_t</a> perm, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:ga6a3b2602f57ff148cd64096da02adbd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5487d02a62fba9444747ccb5838150ba"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga5487d02a62fba9444747ccb5838150ba">apr_dir_remove</a> (const char *path, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr>
<tr class="separator:ga5487d02a62fba9444747ccb5838150ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga39be7fe05d0dda4a28f4358b61a44ac8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga39be7fe05d0dda4a28f4358b61a44ac8">apr_file_info_get</a> (<a class="el" href="structapr__finfo__t.html">apr_finfo_t</a> *finfo, apr_int32_t wanted, <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile)</td></tr>
<tr class="separator:ga39be7fe05d0dda4a28f4358b61a44ac8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac067fe5f208c927cf6d213197b9335a8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gac067fe5f208c927cf6d213197b9335a8">apr_file_trunc</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *fp, apr_off_t offset)</td></tr>
<tr class="separator:gac067fe5f208c927cf6d213197b9335a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga023d6e4d2512382a9d4b1f881e105b8f"><td class="memItemLeft" align="right" valign="top">apr_int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga023d6e4d2512382a9d4b1f881e105b8f">apr_file_flags_get</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *f)</td></tr>
<tr class="separator:ga023d6e4d2512382a9d4b1f881e105b8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab5950b3b0156097b0181394a37e03ede"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gab5950b3b0156097b0181394a37e03ede">apr_file_pool_get</a> (const <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile)</td></tr>
<tr class="separator:gab5950b3b0156097b0181394a37e03ede"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga137bee13d2c65fb8afd4b34e400187c7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga137bee13d2c65fb8afd4b34e400187c7">apr_file_inherit_set</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile)</td></tr>
<tr class="separator:ga137bee13d2c65fb8afd4b34e400187c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga69fa72a6f77b96572248c2a6a347c02a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga69fa72a6f77b96572248c2a6a347c02a">apr_file_inherit_unset</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *thefile)</td></tr>
<tr class="separator:ga69fa72a6f77b96572248c2a6a347c02a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac34981f9ff41f85e4377a6dde185fe52"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#gac34981f9ff41f85e4377a6dde185fe52">apr_file_mktemp</a> (<a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **fp, char *templ, apr_int32_t flags, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *p)</td></tr>
<tr class="separator:gac34981f9ff41f85e4377a6dde185fe52"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5cc19828a668c362be0ad7a12b805cc0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__io.html#ga5cc19828a668c362be0ad7a12b805cc0">apr_temp_dir_get</a> (const char **temp_dir, <a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *p)</td></tr>
<tr class="separator:ga5cc19828a668c362be0ad7a12b805cc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="gaa46e4763ac375ea3c7a43ba6f6099e22"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa46e4763ac375ea3c7a43ba6f6099e22">&#9670;&nbsp;</a></span>apr_file_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Structure for referencing files. </p>

</div>
</div>
<a id="ga11fbee5a7a3f3d45fff5c31df0db9737"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga11fbee5a7a3f3d45fff5c31df0db9737">&#9670;&nbsp;</a></span>apr_fileattrs_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef apr_uint32_t <a class="el" href="group__apr__file__io.html#ga11fbee5a7a3f3d45fff5c31df0db9737">apr_fileattrs_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>File attributes </p>

</div>
</div>
<a id="ga8eecd44975906042e0e369771802a145"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8eecd44975906042e0e369771802a145">&#9670;&nbsp;</a></span>apr_seek_where_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef int <a class="el" href="group__apr__file__io.html#ga8eecd44975906042e0e369771802a145">apr_seek_where_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Type to pass as whence argument to apr_file_seek. </p>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="ga51e0b4703c7561f72587982808985d29"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga51e0b4703c7561f72587982808985d29">&#9670;&nbsp;</a></span>apr_dir_make()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_dir_make </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__info.html#ga3af19c4c47007169064a70f9351bc7d8">apr_fileperms_t</a>&#160;</td>
          <td class="paramname"><em>perm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Create a new directory on the file system. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path for the directory to be created. (use / on all systems) </td></tr>
    <tr><td class="paramname">perm</td><td>Permissions for the new directory. </td></tr>
    <tr><td class="paramname">pool</td><td>the pool to use. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga6a3b2602f57ff148cd64096da02adbd2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6a3b2602f57ff148cd64096da02adbd2">&#9670;&nbsp;</a></span>apr_dir_make_recursive()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_dir_make_recursive </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__info.html#ga3af19c4c47007169064a70f9351bc7d8">apr_fileperms_t</a>&#160;</td>
          <td class="paramname"><em>perm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Creates a new directory on the file system, but behaves like 'mkdir -p'. Creates intermediate directories as required. No error will be reported if PATH already exists. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path for the directory to be created. (use / on all systems) </td></tr>
    <tr><td class="paramname">perm</td><td>Permissions for the new directory. </td></tr>
    <tr><td class="paramname">pool</td><td>the pool to use. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga5487d02a62fba9444747ccb5838150ba"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga5487d02a62fba9444747ccb5838150ba">&#9670;&nbsp;</a></span>apr_dir_remove()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_dir_remove </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Remove directory from the file system. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path for the directory to be removed. (use / on all systems) </td></tr>
    <tr><td class="paramname">pool</td><td>the pool to use. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>Removing a directory which is in-use (e.g., the current working directory, or during apr_dir_read, or with an open file) is not portable. </dd></dl>

</div>
</div>
<a id="ga0b9bc41ffa4ac43cbea46b44eace939e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga0b9bc41ffa4ac43cbea46b44eace939e">&#9670;&nbsp;</a></span>apr_file_append()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_append </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>from_path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>to_path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__info.html#ga3af19c4c47007169064a70f9351bc7d8">apr_fileperms_t</a>&#160;</td>
          <td class="paramname"><em>perms</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Append the specified file to another file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">from_path</td><td>The full path to the source file (use / on all systems) </td></tr>
    <tr><td class="paramname">to_path</td><td>The full path to the destination file (use / on all systems) </td></tr>
    <tr><td class="paramname">perms</td><td>Access permissions for the destination file if it is created. In place of the usual or'd combination of file permissions, the value <a class="el" href="group__apr__file__permissions.html#gac08d4e868c7c9532f7c97c70556663dc">APR_FPROT_FILE_SOURCE_PERMS</a> may be given, in which case the source file's permissions are copied. </td></tr>
    <tr><td class="paramname">pool</td><td>The pool to use. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>The new file does not need to exist, it will be created if required. </dd></dl>

</div>
</div>
<a id="ga96ceec3492ad0c75d2b58c167087ee6a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga96ceec3492ad0c75d2b58c167087ee6a">&#9670;&nbsp;</a></span>apr_file_attrs_set()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_attrs_set </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fname</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#ga11fbee5a7a3f3d45fff5c31df0db9737">apr_fileattrs_t</a>&#160;</td>
          <td class="paramname"><em>attributes</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#ga11fbee5a7a3f3d45fff5c31df0db9737">apr_fileattrs_t</a>&#160;</td>
          <td class="paramname"><em>attr_mask</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set attributes of the specified file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fname</td><td>The full path to the file (using / on all systems) </td></tr>
    <tr><td class="paramname">attributes</td><td>Or'd combination of <ul>
<li><a class="el" href="group__apr__file__attrs__set__flags.html#ga333f2c798495cfb95ee624e11c862e38">APR_FILE_ATTR_READONLY</a> - make the file readonly </li>
<li><a class="el" href="group__apr__file__attrs__set__flags.html#ga51346f433e354f0bc8722388b6b275fd">APR_FILE_ATTR_EXECUTABLE</a> - make the file executable </li>
<li><a class="el" href="group__apr__file__attrs__set__flags.html#ga68c188c0e56b9abdef3c97ffd913c5aa">APR_FILE_ATTR_HIDDEN</a> - make the file hidden </li>
</ul>
</td></tr>
    <tr><td class="paramname">attr_mask</td><td>Mask of valid bits in attributes. </td></tr>
    <tr><td class="paramname">pool</td><td>the pool to use. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>This function should be used in preference to explicit manipulation of the file permissions, because the operations to provide these attributes are platform specific and may involve more than simply setting permission bits. </dd></dl>
<dl class="section warning"><dt>Warning</dt><dd>Platforms which do not implement this feature will return <a class="el" href="group___a_p_r___error.html#ga939ddb834a30bc9a5a0a329b13000161">APR_ENOTIMPL</a>. </dd></dl>

</div>
</div>
<a id="gafe4be8c3b62c42535b84d4237bf6e421"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gafe4be8c3b62c42535b84d4237bf6e421">&#9670;&nbsp;</a></span>apr_file_buffer_set()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_buffer_set </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_size_t&#160;</td>
          <td class="paramname"><em>bufsize</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Give the specified apr file handle a new buffer </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The file handle that is to be modified </td></tr>
    <tr><td class="paramname">buffer</td><td>The buffer </td></tr>
    <tr><td class="paramname">bufsize</td><td>The size of the buffer </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>It is possible to add a buffer to previously unbuffered file handles, the <a class="el" href="group__apr__file__open__flags.html#gac48fd4c853c9f561632a2e8aaf5d8d97">APR_FOPEN_BUFFERED</a> flag will be added to the file handle's flags. Likewise, with buffer=NULL and bufsize=0 arguments it is possible to make a previously buffered file handle unbuffered. </dd></dl>

</div>
</div>
<a id="ga42bbb9227095686ea15eb79f99d248a2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga42bbb9227095686ea15eb79f99d248a2">&#9670;&nbsp;</a></span>apr_file_buffer_size_get()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_size_t apr_file_buffer_size_get </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Get the size of any buffer for the specified apr file handle </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The file handle </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga5607bce1c4c798ceb6c8475a998a81a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga5607bce1c4c798ceb6c8475a998a81a1">&#9670;&nbsp;</a></span>apr_file_close()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_close </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>file</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Close the specified file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">file</td><td>The file descriptor to close. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga2b82c441246cc4596795420b0a94a9a2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga2b82c441246cc4596795420b0a94a9a2">&#9670;&nbsp;</a></span>apr_file_copy()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_copy </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>from_path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>to_path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__info.html#ga3af19c4c47007169064a70f9351bc7d8">apr_fileperms_t</a>&#160;</td>
          <td class="paramname"><em>perms</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Copy the specified file to another file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">from_path</td><td>The full path to the original file (using / on all systems) </td></tr>
    <tr><td class="paramname">to_path</td><td>The full path to the new file (using / on all systems) </td></tr>
    <tr><td class="paramname">perms</td><td>Access permissions for the new file if it is created. In place of the usual or'd combination of file permissions, the value <a class="el" href="group__apr__file__permissions.html#gac08d4e868c7c9532f7c97c70556663dc">APR_FPROT_FILE_SOURCE_PERMS</a> may be given, in which case the source file's permissions are copied. </td></tr>
    <tr><td class="paramname">pool</td><td>The pool to use. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>The new file does not need to exist, it will be created if required. </dd></dl>
<dl class="section warning"><dt>Warning</dt><dd>If the new file already exists, its contents will be overwritten. </dd></dl>

</div>
</div>
<a id="gafa13b7024748a7e45344d6998ddbd281"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gafa13b7024748a7e45344d6998ddbd281">&#9670;&nbsp;</a></span>apr_file_data_get()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_data_get </td>
          <td>(</td>
          <td class="paramtype">void **&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>file</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Return the data associated with the current file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">data</td><td>The user data associated with the file. </td></tr>
    <tr><td class="paramname">key</td><td>The key to use for retrieving data associated with this file. </td></tr>
    <tr><td class="paramname">file</td><td>The currently open file. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga58c857162593d8b3aa999df5b7af0805"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga58c857162593d8b3aa999df5b7af0805">&#9670;&nbsp;</a></span>apr_file_data_set()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_data_set </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a>(*)(void *)&#160;</td>
          <td class="paramname"><em>cleanup</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set the data associated with the current file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">file</td><td>The currently open file. </td></tr>
    <tr><td class="paramname">data</td><td>The user data to associate with the file. </td></tr>
    <tr><td class="paramname">key</td><td>The key to use for associating data with the file. </td></tr>
    <tr><td class="paramname">cleanup</td><td>The cleanup routine to use when the file is destroyed. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="gaa4b4e5027c1d8dbe4e5cb47b8eebc03b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa4b4e5027c1d8dbe4e5cb47b8eebc03b">&#9670;&nbsp;</a></span>apr_file_datasync()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_datasync </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Transfer all file modified data to disk. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The file descriptor to sync </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga6e849af1b0fd31669c58a803fcb13837"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6e849af1b0fd31669c58a803fcb13837">&#9670;&nbsp;</a></span>apr_file_dup()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_dup </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **&#160;</td>
          <td class="paramname"><em>new_file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>old_file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>p</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Duplicate the specified file descriptor. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">new_file</td><td>The structure to duplicate into. </td></tr>
    <tr><td class="paramname">old_file</td><td>The file to duplicate. </td></tr>
    <tr><td class="paramname">p</td><td>The pool to use for the new file. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>*new_file must point to a valid apr_file_t, or point to NULL. </dd></dl>

</div>
</div>
<a id="ga602926aad867088297e8f59490ff939c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga602926aad867088297e8f59490ff939c">&#9670;&nbsp;</a></span>apr_file_dup2()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_dup2 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>new_file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>old_file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>p</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Duplicate the specified file descriptor and close the original </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">new_file</td><td>The old file that is to be closed and reused </td></tr>
    <tr><td class="paramname">old_file</td><td>The file to duplicate </td></tr>
    <tr><td class="paramname">p</td><td>The pool to use for the new file</td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>new_file MUST point at a valid apr_file_t. It cannot be NULL. </dd></dl>

</div>
</div>
<a id="ga8efaff2f556b250fee1021541b782ea8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8efaff2f556b250fee1021541b782ea8">&#9670;&nbsp;</a></span>apr_file_eof()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_eof </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>fptr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Are we at the end of the file </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fptr</td><td>The apr file we are testing. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>Returns <a class="el" href="group___a_p_r___error.html#ga35d9dca2514c522a2840aca0f3e2ebd3">APR_EOF</a> if we are at the end of file, <a class="el" href="group__apr__errno.html#ga9ee311b7bf1c691dc521d721339ee2a6">APR_SUCCESS</a> otherwise. </dd></dl>

</div>
</div>
<a id="ga023d6e4d2512382a9d4b1f881e105b8f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga023d6e4d2512382a9d4b1f881e105b8f">&#9670;&nbsp;</a></span>apr_file_flags_get()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_int32_t apr_file_flags_get </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>f</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Retrieve the flags that were passed into <a class="el" href="group__apr__file__io.html#gabda14cbf242fb4fe99055434213e5446">apr_file_open()</a> when the file was opened. </p><dl class="section return"><dt>Returns</dt><dd>apr_int32_t the flags </dd></dl>

</div>
</div>
<a id="ga68aba780b7fc53e47404bfd8def949bc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga68aba780b7fc53e47404bfd8def949bc">&#9670;&nbsp;</a></span>apr_file_flush()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_flush </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Flush the file's buffer. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The file descriptor to flush </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga852b9c77d4223af15d8d3674a0e2714d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga852b9c77d4223af15d8d3674a0e2714d">&#9670;&nbsp;</a></span>apr_file_getc()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_getc </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>ch</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Read a character from the specified file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">ch</td><td>The character to read into </td></tr>
    <tr><td class="paramname">thefile</td><td>The file descriptor to read from </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="gaf9513b769c10b09e5f37d6d0b86bdce9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf9513b769c10b09e5f37d6d0b86bdce9">&#9670;&nbsp;</a></span>apr_file_gets()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_gets </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Read a line from the specified file </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">str</td><td>The buffer to store the string in. </td></tr>
    <tr><td class="paramname">len</td><td>The length of the string </td></tr>
    <tr><td class="paramname">thefile</td><td>The file descriptor to read from </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>The buffer will be NUL-terminated if any characters are stored. The newline at the end of the line will not be stripped. </dd></dl>

</div>
</div>
<a id="ga39be7fe05d0dda4a28f4358b61a44ac8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga39be7fe05d0dda4a28f4358b61a44ac8">&#9670;&nbsp;</a></span>apr_file_info_get()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_info_get </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structapr__finfo__t.html">apr_finfo_t</a> *&#160;</td>
          <td class="paramname"><em>finfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_int32_t&#160;</td>
          <td class="paramname"><em>wanted</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>get the specified file's stats. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">finfo</td><td>Where to store the information about the file. </td></tr>
    <tr><td class="paramname">wanted</td><td>The desired <a class="el" href="structapr__finfo__t.html">apr_finfo_t</a> fields, as a bit flag of APR_FINFO_* values </td></tr>
    <tr><td class="paramname">thefile</td><td>The file to get information about. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga137bee13d2c65fb8afd4b34e400187c7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga137bee13d2c65fb8afd4b34e400187c7">&#9670;&nbsp;</a></span>apr_file_inherit_set()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_inherit_set </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set a file to be inherited by child processes. </p>

</div>
</div>
<a id="ga69fa72a6f77b96572248c2a6a347c02a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga69fa72a6f77b96572248c2a6a347c02a">&#9670;&nbsp;</a></span>apr_file_inherit_unset()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_inherit_unset </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Unset a file from being inherited by child processes. </p>

</div>
</div>
<a id="gaa7911275c0e97edc064b8167be658f9e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa7911275c0e97edc064b8167be658f9e">&#9670;&nbsp;</a></span>apr_file_link()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_link </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>from_path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>to_path</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Create a hard link to the specified file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">from_path</td><td>The full path to the original file (using / on all systems) </td></tr>
    <tr><td class="paramname">to_path</td><td>The full path to the new file (using / on all systems) </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>Both files must reside on the same device. </dd></dl>

</div>
</div>
<a id="ga2d337e66c1fa0cd433164079bf542484"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga2d337e66c1fa0cd433164079bf542484">&#9670;&nbsp;</a></span>apr_file_lock()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_lock </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>type</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>file (un)locking functions. Establish a lock on the specified, open file. The lock may be advisory or mandatory, at the discretion of the platform. The lock applies to the file as a whole, rather than a specific range. Locks are established on a per-thread/process basis; a second lock by the same thread will not block. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The file to lock. </td></tr>
    <tr><td class="paramname">type</td><td>The type of lock to establish on the file. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="gac34981f9ff41f85e4377a6dde185fe52"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac34981f9ff41f85e4377a6dde185fe52">&#9670;&nbsp;</a></span>apr_file_mktemp()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_mktemp </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **&#160;</td>
          <td class="paramname"><em>fp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>templ</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_int32_t&#160;</td>
          <td class="paramname"><em>flags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>p</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Open a temporary file </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fp</td><td>The apr file to use as a temporary file. </td></tr>
    <tr><td class="paramname">templ</td><td>The template to use when creating a temp file. </td></tr>
    <tr><td class="paramname">flags</td><td>The flags to open the file with. If this is zero, the file is opened with <a class="el" href="group__apr__file__open__flags.html#gafe94f21ccbf411172e70e7f473af251a">APR_FOPEN_CREATE</a> | <a class="el" href="group__apr__file__open__flags.html#gaf9e7303f028b130ff7d4b209d6662d7d">APR_FOPEN_READ</a> | <a class="el" href="group__apr__file__open__flags.html#gac598bb95fc9476b0bf2ed0b1c308842c">APR_FOPEN_WRITE</a> | <a class="el" href="group__apr__file__open__flags.html#gabb7fb062cdf1d58faee8c7ea518496f1">APR_FOPEN_EXCL</a> | <a class="el" href="group__apr__file__open__flags.html#ga5d3756f6d242c667ed1d3f54af4916eb">APR_FOPEN_DELONCLOSE</a> </td></tr>
    <tr><td class="paramname">p</td><td>The pool to allocate the file out of. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>This function generates a unique temporary file name from template. The last six characters of template must be XXXXXX and these are replaced with a string that makes the filename unique. Since it will be modified, template must not be a string constant, but should be declared as a character array. </dd></dl>

</div>
</div>
<a id="ga79f58458a00a4072622005c09ed8f96f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga79f58458a00a4072622005c09ed8f96f">&#9670;&nbsp;</a></span>apr_file_mtime_set()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_mtime_set </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fname</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__time.html#gadb4bde16055748190eae190c55aa02bb">apr_time_t</a>&#160;</td>
          <td class="paramname"><em>mtime</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set the mtime of the specified file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fname</td><td>The full path to the file (using / on all systems) </td></tr>
    <tr><td class="paramname">mtime</td><td>The mtime to apply to the file. </td></tr>
    <tr><td class="paramname">pool</td><td>The pool to use. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section warning"><dt>Warning</dt><dd>Platforms which do not implement this feature will return <a class="el" href="group___a_p_r___error.html#ga939ddb834a30bc9a5a0a329b13000161">APR_ENOTIMPL</a>. </dd></dl>

</div>
</div>
<a id="ga5c750a88fe1e032e1d85d3db40d9519f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga5c750a88fe1e032e1d85d3db40d9519f">&#9670;&nbsp;</a></span>apr_file_name_get()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_name_get </td>
          <td>(</td>
          <td class="paramtype">const char **&#160;</td>
          <td class="paramname"><em>new_path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>accessor and general file_io functions. return the file name of the current file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">new_path</td><td>The path of the file. </td></tr>
    <tr><td class="paramname">thefile</td><td>The currently open file. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga60cec3e6717bab0f11577bd7c38b4c59"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga60cec3e6717bab0f11577bd7c38b4c59">&#9670;&nbsp;</a></span>apr_file_namedpipe_create()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_namedpipe_create </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>filename</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__info.html#ga3af19c4c47007169064a70f9351bc7d8">apr_fileperms_t</a>&#160;</td>
          <td class="paramname"><em>perm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Create a named pipe. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">filename</td><td>The filename of the named pipe </td></tr>
    <tr><td class="paramname">perm</td><td>The permissions for the newly created pipe. </td></tr>
    <tr><td class="paramname">pool</td><td>The pool to operate on. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="gabda14cbf242fb4fe99055434213e5446"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gabda14cbf242fb4fe99055434213e5446">&#9670;&nbsp;</a></span>apr_file_open()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_open </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **&#160;</td>
          <td class="paramname"><em>newf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fname</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_int32_t&#160;</td>
          <td class="paramname"><em>flag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__info.html#ga3af19c4c47007169064a70f9351bc7d8">apr_fileperms_t</a>&#160;</td>
          <td class="paramname"><em>perm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Open the specified file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">newf</td><td>The opened file descriptor. </td></tr>
    <tr><td class="paramname">fname</td><td>The full path to the file (using / on all systems) </td></tr>
    <tr><td class="paramname">flag</td><td>Or'ed value of: <ul>
<li><a class="el" href="group__apr__file__open__flags.html#gaf9e7303f028b130ff7d4b209d6662d7d">APR_FOPEN_READ</a> open for reading </li>
<li><a class="el" href="group__apr__file__open__flags.html#gac598bb95fc9476b0bf2ed0b1c308842c">APR_FOPEN_WRITE</a> open for writing </li>
<li><a class="el" href="group__apr__file__open__flags.html#gafe94f21ccbf411172e70e7f473af251a">APR_FOPEN_CREATE</a> create the file if not there </li>
<li><a class="el" href="group__apr__file__open__flags.html#ga45f353db9b71d4760a3f35cf3781cfc8">APR_FOPEN_APPEND</a> file ptr is set to end prior to all writes </li>
<li><a class="el" href="group__apr__file__open__flags.html#ga09b05a5bd5db534b93794f7657bcb146">APR_FOPEN_TRUNCATE</a> set length to zero if file exists </li>
<li><a class="el" href="group__apr__file__open__flags.html#gacb20b3028864f34cb26314fe2cacc3fa">APR_FOPEN_BINARY</a> not a text file </li>
<li><a class="el" href="group__apr__file__open__flags.html#gac48fd4c853c9f561632a2e8aaf5d8d97">APR_FOPEN_BUFFERED</a> buffer the data. Default is non-buffered </li>
<li><a class="el" href="group__apr__file__open__flags.html#gabb7fb062cdf1d58faee8c7ea518496f1">APR_FOPEN_EXCL</a> return error if <a class="el" href="group__apr__file__open__flags.html#gafe94f21ccbf411172e70e7f473af251a">APR_FOPEN_CREATE</a> and file exists </li>
<li><a class="el" href="group__apr__file__open__flags.html#ga5d3756f6d242c667ed1d3f54af4916eb">APR_FOPEN_DELONCLOSE</a> delete the file after closing </li>
<li><a class="el" href="group__apr__file__open__flags.html#ga435cd9b2604b11796779c23ffa00a3dd">APR_FOPEN_XTHREAD</a> Platform dependent tag to open the file for use across multiple threads </li>
<li><a class="el" href="group__apr__file__open__flags.html#ga426f6e2a8457ab410d99248269059a18">APR_FOPEN_SHARELOCK</a> Platform dependent support for higher level locked read/write access to support writes across process/machines </li>
<li><a class="el" href="group__apr__file__open__flags.html#ga3fc9b5a7791d9f462997cd29de67eb80">APR_FOPEN_NOCLEANUP</a> Do not register a cleanup with the pool passed in on the <em>pool</em> argument (see below) </li>
<li><a class="el" href="group__apr__file__open__flags.html#ga60c21e28e4a612d58a874fe2cc71a6e4">APR_FOPEN_SENDFILE_ENABLED</a> Open with appropriate platform semantics for sendfile operations. Advisory only, apr_socket_sendfile does not check this flag </li>
<li><a class="el" href="group__apr__file__open__flags.html#gaf6cfaa4789e6264afd186235f0adbc22">APR_FOPEN_LARGEFILE</a> Platform dependent flag to enable large file support, see WARNING below </li>
<li><a class="el" href="group__apr__file__open__flags.html#ga0d155e9bb7fbf1a5cd4e84b5ede059f4">APR_FOPEN_SPARSE</a> Platform dependent flag to enable sparse file support, see WARNING below </li>
<li><a class="el" href="group__apr__file__open__flags.html#ga31e4d14068147e43e1778bcf975dda62">APR_FOPEN_NONBLOCK</a> Platform dependent flag to enable non blocking file io </li>
</ul>
</td></tr>
    <tr><td class="paramname">perm</td><td>Access permissions for file. </td></tr>
    <tr><td class="paramname">pool</td><td>The pool to use. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>If perm is <a class="el" href="group__apr__file__permissions.html#gad3c65a67ee6eb12ecc6a33857397900b">APR_FPROT_OS_DEFAULT</a> and the file is being created, appropriate default permissions will be used. </dd>
<dd>
By default, the returned file descriptor will not be inherited by child processes created by <a class="el" href="group__apr__thread__proc.html#gab51dd90b98d365a969f0ec5c7bef4e14">apr_proc_create()</a>. This can be changed using <a class="el" href="group__apr__file__io.html#ga137bee13d2c65fb8afd4b34e400187c7">apr_file_inherit_set()</a>. </dd></dl>

</div>
</div>
<a id="ga6e87d695994e236dae3d428ed68886bf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6e87d695994e236dae3d428ed68886bf">&#9670;&nbsp;</a></span>apr_file_open_flags_stderr()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_open_flags_stderr </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **&#160;</td>
          <td class="paramname"><em>thefile</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_int32_t&#160;</td>
          <td class="paramname"><em>flags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>open standard error as an apr file pointer, with flags. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The apr file to use as stderr. </td></tr>
    <tr><td class="paramname">flags</td><td>The flags to open the file with. Only the <ul>
<li><a class="el" href="group__apr__file__open__flags.html#gabb7fb062cdf1d58faee8c7ea518496f1">APR_FOPEN_EXCL</a> </li>
<li><a class="el" href="group__apr__file__open__flags.html#gac48fd4c853c9f561632a2e8aaf5d8d97">APR_FOPEN_BUFFERED</a> </li>
<li><a class="el" href="group__apr__file__open__flags.html#ga435cd9b2604b11796779c23ffa00a3dd">APR_FOPEN_XTHREAD</a> </li>
<li><a class="el" href="group__apr__file__open__flags.html#ga426f6e2a8457ab410d99248269059a18">APR_FOPEN_SHARELOCK</a> </li>
<li><a class="el" href="group__apr__file__open__flags.html#ga60c21e28e4a612d58a874fe2cc71a6e4">APR_FOPEN_SENDFILE_ENABLED</a> </li>
<li><a class="el" href="group__apr__file__open__flags.html#gaf6cfaa4789e6264afd186235f0adbc22">APR_FOPEN_LARGEFILE</a></li>
</ul>
flags should be used. The <a class="el" href="group__apr__file__open__flags.html#gac598bb95fc9476b0bf2ed0b1c308842c">APR_FOPEN_WRITE</a> flag will be set unconditionally. </td></tr>
    <tr><td class="paramname">pool</td><td>The pool to allocate the file out of.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>See remarks for <a class="el" href="group__apr__file__io.html#gaf426d98943319acced2c9b52757f377f">apr_file_open_stderr()</a>. </dd></dl>

</div>
</div>
<a id="ga3bde3e61454b5604077f297b1d1671c0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3bde3e61454b5604077f297b1d1671c0">&#9670;&nbsp;</a></span>apr_file_open_flags_stdin()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_open_flags_stdin </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **&#160;</td>
          <td class="paramname"><em>thefile</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_int32_t&#160;</td>
          <td class="paramname"><em>flags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>open standard input as an apr file pointer, with flags. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The apr file to use as stdin. </td></tr>
    <tr><td class="paramname">flags</td><td>The flags to open the file with. Only the <ul>
<li><a class="el" href="group__apr__file__open__flags.html#gabb7fb062cdf1d58faee8c7ea518496f1">APR_FOPEN_EXCL</a> </li>
<li><a class="el" href="group__apr__file__open__flags.html#gac48fd4c853c9f561632a2e8aaf5d8d97">APR_FOPEN_BUFFERED</a> </li>
<li><a class="el" href="group__apr__file__open__flags.html#ga435cd9b2604b11796779c23ffa00a3dd">APR_FOPEN_XTHREAD</a> </li>
<li><a class="el" href="group__apr__file__open__flags.html#ga426f6e2a8457ab410d99248269059a18">APR_FOPEN_SHARELOCK</a> </li>
<li><a class="el" href="group__apr__file__open__flags.html#ga60c21e28e4a612d58a874fe2cc71a6e4">APR_FOPEN_SENDFILE_ENABLED</a> </li>
<li><a class="el" href="group__apr__file__open__flags.html#gaf6cfaa4789e6264afd186235f0adbc22">APR_FOPEN_LARGEFILE</a></li>
</ul>
flags should be used. The <a class="el" href="group__apr__file__open__flags.html#gac598bb95fc9476b0bf2ed0b1c308842c">APR_FOPEN_WRITE</a> flag will be set unconditionally. </td></tr>
    <tr><td class="paramname">pool</td><td>The pool to allocate the file out of.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>See remarks for <a class="el" href="group__apr__file__io.html#gaf426d98943319acced2c9b52757f377f">apr_file_open_stderr()</a>. </dd></dl>

</div>
</div>
<a id="gaeda353505bc1dc46db93b0a80d0b1c4c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaeda353505bc1dc46db93b0a80d0b1c4c">&#9670;&nbsp;</a></span>apr_file_open_flags_stdout()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_open_flags_stdout </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **&#160;</td>
          <td class="paramname"><em>thefile</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_int32_t&#160;</td>
          <td class="paramname"><em>flags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>open standard output as an apr file pointer, with flags. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The apr file to use as stdout. </td></tr>
    <tr><td class="paramname">flags</td><td>The flags to open the file with. Only the <ul>
<li><a class="el" href="group__apr__file__open__flags.html#gabb7fb062cdf1d58faee8c7ea518496f1">APR_FOPEN_EXCL</a> </li>
<li><a class="el" href="group__apr__file__open__flags.html#gac48fd4c853c9f561632a2e8aaf5d8d97">APR_FOPEN_BUFFERED</a> </li>
<li><a class="el" href="group__apr__file__open__flags.html#ga435cd9b2604b11796779c23ffa00a3dd">APR_FOPEN_XTHREAD</a> </li>
<li><a class="el" href="group__apr__file__open__flags.html#ga426f6e2a8457ab410d99248269059a18">APR_FOPEN_SHARELOCK</a> </li>
<li><a class="el" href="group__apr__file__open__flags.html#ga60c21e28e4a612d58a874fe2cc71a6e4">APR_FOPEN_SENDFILE_ENABLED</a> </li>
<li><a class="el" href="group__apr__file__open__flags.html#gaf6cfaa4789e6264afd186235f0adbc22">APR_FOPEN_LARGEFILE</a></li>
</ul>
flags should be used. The <a class="el" href="group__apr__file__open__flags.html#gac598bb95fc9476b0bf2ed0b1c308842c">APR_FOPEN_WRITE</a> flag will be set unconditionally. </td></tr>
    <tr><td class="paramname">pool</td><td>The pool to allocate the file out of.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>See remarks for <a class="el" href="group__apr__file__io.html#gaf426d98943319acced2c9b52757f377f">apr_file_open_stderr()</a>. </dd></dl>

</div>
</div>
<a id="gaf426d98943319acced2c9b52757f377f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf426d98943319acced2c9b52757f377f">&#9670;&nbsp;</a></span>apr_file_open_stderr()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_open_stderr </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **&#160;</td>
          <td class="paramname"><em>thefile</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Open standard error as an apr file pointer. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The apr file to use as stderr. </td></tr>
    <tr><td class="paramname">pool</td><td>The pool to allocate the file out of.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>The only reason that the apr_file_open_std* functions exist is that you may not always have a stderr/out/in on Windows. This is generally a problem with newer versions of Windows and services.</dd>
<dd>
The other problem is that the C library functions generally work differently on Windows and Unix. So, by using apr_file_open_std* functions, you can get a handle to an APR struct that works with the APR functions which are supposed to work identically on all platforms. </dd></dl>

</div>
</div>
<a id="ga539454470148f9b22a31f85936a5f8b4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga539454470148f9b22a31f85936a5f8b4">&#9670;&nbsp;</a></span>apr_file_open_stdin()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_open_stdin </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **&#160;</td>
          <td class="paramname"><em>thefile</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>open standard input as an apr file pointer. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The apr file to use as stdin. </td></tr>
    <tr><td class="paramname">pool</td><td>The pool to allocate the file out of.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>See remarks for <a class="el" href="group__apr__file__io.html#gaf426d98943319acced2c9b52757f377f">apr_file_open_stderr()</a>. </dd></dl>

</div>
</div>
<a id="ga0d36922c0944ff9675cc820e68d56199"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga0d36922c0944ff9675cc820e68d56199">&#9670;&nbsp;</a></span>apr_file_open_stdout()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_open_stdout </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **&#160;</td>
          <td class="paramname"><em>thefile</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>open standard output as an apr file pointer. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The apr file to use as stdout. </td></tr>
    <tr><td class="paramname">pool</td><td>The pool to allocate the file out of.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>See remarks for <a class="el" href="group__apr__file__io.html#gaf426d98943319acced2c9b52757f377f">apr_file_open_stderr()</a>. </dd></dl>

</div>
</div>
<a id="gac5fed6d75597476718c40fc603823b1e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac5fed6d75597476718c40fc603823b1e">&#9670;&nbsp;</a></span>apr_file_perms_set()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_perms_set </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fname</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__info.html#ga3af19c4c47007169064a70f9351bc7d8">apr_fileperms_t</a>&#160;</td>
          <td class="paramname"><em>perms</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>set the specified file's permission bits. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fname</td><td>The file (name) to apply the permissions to. </td></tr>
    <tr><td class="paramname">perms</td><td>The permission bits to apply to the file.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section warning"><dt>Warning</dt><dd>Some platforms may not be able to apply all of the available permission bits; <a class="el" href="group___a_p_r___error.html#ga64dff43b83bcefd3f3c751be6b864ca1">APR_INCOMPLETE</a> will be returned if some permissions are specified which could not be set.</dd>
<dd>
Platforms which do not implement this feature will return <a class="el" href="group___a_p_r___error.html#ga939ddb834a30bc9a5a0a329b13000161">APR_ENOTIMPL</a>. </dd></dl>

</div>
</div>
<a id="gaae3b81342d239c58c351cf11190740ed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaae3b81342d239c58c351cf11190740ed">&#9670;&nbsp;</a></span>apr_file_pipe_create()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_pipe_create </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Create an anonymous pipe. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">in</td><td>The newly created pipe's file for reading. </td></tr>
    <tr><td class="paramname">out</td><td>The newly created pipe's file for writing. </td></tr>
    <tr><td class="paramname">pool</td><td>The pool to operate on. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>By default, the returned file descriptors will be inherited by child processes created using <a class="el" href="group__apr__thread__proc.html#gab51dd90b98d365a969f0ec5c7bef4e14">apr_proc_create()</a>. This can be changed using <a class="el" href="group__apr__file__io.html#ga69fa72a6f77b96572248c2a6a347c02a">apr_file_inherit_unset()</a>. </dd></dl>
<dl class="bug"><dt><b><a class="el" href="bug.html#_bug000003">Bug:</a></b></dt><dd>Some platforms cannot toggle between blocking and nonblocking, and when passing a pipe as a standard handle to an application which does not expect it, a non-blocking stream will fluxor the client app. </dd></dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000031">Deprecated:</a></b></dt><dd></dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__apr__file__io.html#ga2fbbae715bee0e0ca9adadd66ac65e96">apr_file_pipe_create_ex()</a> </dd></dl>

</div>
</div>
<a id="ga2fbbae715bee0e0ca9adadd66ac65e96"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga2fbbae715bee0e0ca9adadd66ac65e96">&#9670;&nbsp;</a></span>apr_file_pipe_create_ex()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_pipe_create_ex </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_int32_t&#160;</td>
          <td class="paramname"><em>blocking</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Create an anonymous pipe which portably supports async timeout options. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">in</td><td>The newly created pipe's file for reading. </td></tr>
    <tr><td class="paramname">out</td><td>The newly created pipe's file for writing. </td></tr>
    <tr><td class="paramname">blocking</td><td>one of these values defined in <a class="el" href="apr__thread__proc_8h.html" title="APR Thread and Process Library. ">apr_thread_proc.h</a>; <ul>
<li><a class="el" href="group__apr__thread__proc.html#ga646af57314e71f4647243f36dd03e5ea">APR_FULL_BLOCK</a> </li>
<li><a class="el" href="group__apr__thread__proc.html#gaf8295548cb0821ee02249d6de8336bcb">APR_READ_BLOCK</a> </li>
<li><a class="el" href="group__apr__thread__proc.html#ga36ff2de9664ad6995bd488b4ac715c9c">APR_WRITE_BLOCK</a> </li>
<li><a class="el" href="group__apr__thread__proc.html#gae0707f76da785490830fc3491093767c">APR_FULL_NONBLOCK</a> </li>
</ul>
</td></tr>
    <tr><td class="paramname">pool</td><td>The pool to operate on. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>By default, the returned file descriptors will be inherited by child processes created using <a class="el" href="group__apr__thread__proc.html#gab51dd90b98d365a969f0ec5c7bef4e14">apr_proc_create()</a>. This can be changed using <a class="el" href="group__apr__file__io.html#ga69fa72a6f77b96572248c2a6a347c02a">apr_file_inherit_unset()</a>. </dd>
<dd>
Some platforms cannot toggle between blocking and nonblocking, and when passing a pipe as a standard handle to an application which does not expect it, a non-blocking stream will fluxor the client app. Use this function rather than <a class="el" href="group__apr__file__io.html#gaae3b81342d239c58c351cf11190740ed">apr_file_pipe_create()</a> to create pipes where one or both ends require non-blocking semantics. </dd></dl>

</div>
</div>
<a id="ga90e481207a38df04818a0c55883ee953"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga90e481207a38df04818a0c55883ee953">&#9670;&nbsp;</a></span>apr_file_pipe_timeout_get()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_pipe_timeout_get </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thepipe</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__time.html#gaae2129185a395cc393f76fabf4f43e47">apr_interval_time_t</a> *&#160;</td>
          <td class="paramname"><em>timeout</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Get the timeout value for a pipe or manipulate the blocking state. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thepipe</td><td>The pipe we are getting a timeout for. </td></tr>
    <tr><td class="paramname">timeout</td><td>The current timeout value in microseconds. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="gaf88d2fca768e3fa9f28ea010e1bf602a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf88d2fca768e3fa9f28ea010e1bf602a">&#9670;&nbsp;</a></span>apr_file_pipe_timeout_set()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_pipe_timeout_set </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thepipe</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__time.html#gaae2129185a395cc393f76fabf4f43e47">apr_interval_time_t</a>&#160;</td>
          <td class="paramname"><em>timeout</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set the timeout value for a pipe or manipulate the blocking state. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thepipe</td><td>The pipe we are setting a timeout on. </td></tr>
    <tr><td class="paramname">timeout</td><td>The timeout value in microseconds. Values &lt; 0 mean wait forever, 0 means do not wait at all. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="gab5950b3b0156097b0181394a37e03ede"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gab5950b3b0156097b0181394a37e03ede">&#9670;&nbsp;</a></span>apr_file_pool_get()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a>* apr_file_pool_get </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Get the pool used by the file. </p>

</div>
</div>
<a id="ga29fca4b0201c236856fea5578f410c0e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga29fca4b0201c236856fea5578f410c0e">&#9670;&nbsp;</a></span>apr_file_printf()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int apr_file_printf </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>fptr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>format</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Write a string to a file using a printf format. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fptr</td><td>The file to write to. </td></tr>
    <tr><td class="paramname">format</td><td>The format string </td></tr>
    <tr><td class="paramname">...</td><td>The values to substitute in the format string </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The number of bytes written </dd></dl>

</div>
</div>
<a id="ga33e51b53194e7c0dac513ca27ca18e63"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga33e51b53194e7c0dac513ca27ca18e63">&#9670;&nbsp;</a></span>apr_file_putc()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_putc </td>
          <td>(</td>
          <td class="paramtype">char&#160;</td>
          <td class="paramname"><em>ch</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Write a character into the specified file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">ch</td><td>The character to write. </td></tr>
    <tr><td class="paramname">thefile</td><td>The file descriptor to write to </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="gacde81145cc38660a1512d469886ddb16"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gacde81145cc38660a1512d469886ddb16">&#9670;&nbsp;</a></span>apr_file_puts()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_puts </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Write the string into the specified file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">str</td><td>The string to write. </td></tr>
    <tr><td class="paramname">thefile</td><td>The file descriptor to write to </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="gadd067ee0050dff0c03a9420c9d424466"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gadd067ee0050dff0c03a9420c9d424466">&#9670;&nbsp;</a></span>apr_file_read()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_read </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_size_t *&#160;</td>
          <td class="paramname"><em>nbytes</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Read data from the specified file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The file descriptor to read from. </td></tr>
    <tr><td class="paramname">buf</td><td>The buffer to store the data to. </td></tr>
    <tr><td class="paramname">nbytes</td><td>On entry, the number of bytes to read; on exit, the number of bytes read.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd><a class="el" href="group__apr__file__io.html#gadd067ee0050dff0c03a9420c9d424466">apr_file_read()</a> will read up to the specified number of bytes, but never more. If there isn't enough data to fill that number of bytes, all of the available data is read. The third argument is modified to reflect the number of bytes read. If a char was put back into the stream via ungetc, it will be the first character returned.</dd>
<dd>
It is not possible for both bytes to be read and an <a class="el" href="group___a_p_r___error.html#ga35d9dca2514c522a2840aca0f3e2ebd3">APR_EOF</a> or other error to be returned. <a class="el" href="group___a_p_r___error.html#gaee1ce306c0ebf1701b34172310aa1bd5">APR_EINTR</a> is never returned. </dd></dl>

</div>
</div>
<a id="gaf39a17404e868808aff8e2e7ecaa87e0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf39a17404e868808aff8e2e7ecaa87e0">&#9670;&nbsp;</a></span>apr_file_read_full()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_read_full </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_size_t&#160;</td>
          <td class="paramname"><em>nbytes</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_size_t *&#160;</td>
          <td class="paramname"><em>bytes_read</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Read data from the specified file, ensuring that the buffer is filled before returning. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The file descriptor to read from. </td></tr>
    <tr><td class="paramname">buf</td><td>The buffer to store the data to. </td></tr>
    <tr><td class="paramname">nbytes</td><td>The number of bytes to read. </td></tr>
    <tr><td class="paramname">bytes_read</td><td>If non-NULL, this will contain the number of bytes read.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd><a class="el" href="group__apr__file__io.html#gaf39a17404e868808aff8e2e7ecaa87e0">apr_file_read_full()</a> will read up to the specified number of bytes, but never more. If there isn't enough data to fill that number of bytes, then the process/thread will block until it is available or EOF is reached. If a char was put back into the stream via ungetc, it will be the first character returned.</dd>
<dd>
It is possible for both bytes to be read and an error to be returned. And if *bytes_read is less than nbytes, an accompanying error is <em>always</em> returned.</dd>
<dd>
<a class="el" href="group___a_p_r___error.html#gaee1ce306c0ebf1701b34172310aa1bd5">APR_EINTR</a> is never returned. </dd></dl>

</div>
</div>
<a id="ga211c40be82f8bf8b8d7dce5afca5500b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga211c40be82f8bf8b8d7dce5afca5500b">&#9670;&nbsp;</a></span>apr_file_remove()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_remove </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Delete the specified file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>The full path to the file (using / on all systems) </td></tr>
    <tr><td class="paramname">pool</td><td>The pool to use. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>If the file is open, it won't be removed until all instances are closed. </dd></dl>

</div>
</div>
<a id="ga29b5633bb80226baa5de79a83c6999aa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga29b5633bb80226baa5de79a83c6999aa">&#9670;&nbsp;</a></span>apr_file_rename()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_rename </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>from_path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>to_path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>pool</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Rename the specified file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">from_path</td><td>The full path to the original file (using / on all systems) </td></tr>
    <tr><td class="paramname">to_path</td><td>The full path to the new file (using / on all systems) </td></tr>
    <tr><td class="paramname">pool</td><td>The pool to use. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section warning"><dt>Warning</dt><dd>If a file exists at the new location, then it will be overwritten. Moving files or directories across devices may not be possible. </dd></dl>

</div>
</div>
<a id="ga9db84bec24db97a53890df1a6aff63a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga9db84bec24db97a53890df1a6aff63a1">&#9670;&nbsp;</a></span>apr_file_seek()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_seek </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#ga8eecd44975906042e0e369771802a145">apr_seek_where_t</a>&#160;</td>
          <td class="paramname"><em>where</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_off_t *&#160;</td>
          <td class="paramname"><em>offset</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Move the read/write file offset to a specified byte within a file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The file descriptor </td></tr>
    <tr><td class="paramname">where</td><td>How to move the pointer, one of: <ul>
<li><a class="el" href="group__apr__file__seek__flags.html#ga2fdf78845c897f69451d49e1e2b90ac9">APR_SET</a> &ndash; set the offset to offset </li>
<li><a class="el" href="group__apr__file__seek__flags.html#gae17abc53fea00bfd51e184017113e250">APR_CUR</a> &ndash; add the offset to the current position </li>
<li><a class="el" href="group__apr__file__seek__flags.html#ga438f3568be799d1e4bbd19492ca47d22">APR_END</a> &ndash; add the offset to the current file size </li>
</ul>
</td></tr>
    <tr><td class="paramname">offset</td><td>The offset to move the pointer to. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>The third argument is modified to be the offset the pointer was actually moved to. </dd></dl>

</div>
</div>
<a id="gadaf046ce39aa118dab921a407446355b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gadaf046ce39aa118dab921a407446355b">&#9670;&nbsp;</a></span>apr_file_setaside()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_setaside </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> **&#160;</td>
          <td class="paramname"><em>new_file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>old_file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>p</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Move the specified file descriptor to a new pool </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">new_file</td><td>Pointer in which to return the new apr_file_t </td></tr>
    <tr><td class="paramname">old_file</td><td>The file to move </td></tr>
    <tr><td class="paramname">p</td><td>The pool to which the descriptor is to be moved </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>Unlike <a class="el" href="group__apr__file__io.html#ga602926aad867088297e8f59490ff939c">apr_file_dup2()</a>, this function doesn't do an OS dup() operation on the underlying descriptor; it just moves the descriptor's apr_file_t wrapper to a new pool. </dd>
<dd>
The new pool need not be an ancestor of old_file's pool. </dd>
<dd>
After calling this function, old_file may not be used </dd></dl>

</div>
</div>
<a id="ga4385e141c4bbb96294acd7d342f138da"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga4385e141c4bbb96294acd7d342f138da">&#9670;&nbsp;</a></span>apr_file_sync()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_sync </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Transfer all file modified data and metadata to disk. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The file descriptor to sync </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="gac067fe5f208c927cf6d213197b9335a8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac067fe5f208c927cf6d213197b9335a8">&#9670;&nbsp;</a></span>apr_file_trunc()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_trunc </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>fp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_off_t&#160;</td>
          <td class="paramname"><em>offset</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Truncate the file's length to the specified offset </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fp</td><td>The file to truncate </td></tr>
    <tr><td class="paramname">offset</td><td>The offset to truncate to. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>The read/write file offset is repositioned to offset. </dd></dl>

</div>
</div>
<a id="ga9d06778e719d596ab96bca812b01cb3a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga9d06778e719d596ab96bca812b01cb3a">&#9670;&nbsp;</a></span>apr_file_ungetc()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_ungetc </td>
          <td>(</td>
          <td class="paramtype">char&#160;</td>
          <td class="paramname"><em>ch</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Put a character back onto a specified stream. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">ch</td><td>The character to write. </td></tr>
    <tr><td class="paramname">thefile</td><td>The file descriptor to write to </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga3a255996fb439b6d66ed7cd65319525b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3a255996fb439b6d66ed7cd65319525b">&#9670;&nbsp;</a></span>apr_file_unlock()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_unlock </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Remove any outstanding locks on the file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The file to unlock. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga2e4baa94102c363fdca3c850375d3584"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga2e4baa94102c363fdca3c850375d3584">&#9670;&nbsp;</a></span>apr_file_write()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_write </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_size_t *&#160;</td>
          <td class="paramname"><em>nbytes</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Write data to the specified file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The file descriptor to write to. </td></tr>
    <tr><td class="paramname">buf</td><td>The buffer which contains the data. </td></tr>
    <tr><td class="paramname">nbytes</td><td>On entry, the number of bytes to write; on exit, the number of bytes written.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd><a class="el" href="group__apr__file__io.html#ga2e4baa94102c363fdca3c850375d3584">apr_file_write()</a> will write up to the specified number of bytes, but never more. If the OS cannot write that many bytes, it will write as many as it can. The third argument is modified to reflect the * number of bytes written.</dd>
<dd>
It is possible for both bytes to be written and an error to be returned. <a class="el" href="group___a_p_r___error.html#gaee1ce306c0ebf1701b34172310aa1bd5">APR_EINTR</a> is never returned. </dd></dl>

</div>
</div>
<a id="ga560d5c062d65e64c07d906d1207337d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga560d5c062d65e64c07d906d1207337d4">&#9670;&nbsp;</a></span>apr_file_write_full()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_write_full </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_size_t&#160;</td>
          <td class="paramname"><em>nbytes</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_size_t *&#160;</td>
          <td class="paramname"><em>bytes_written</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Write data to the specified file, ensuring that all of the data is written before returning. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The file descriptor to write to. </td></tr>
    <tr><td class="paramname">buf</td><td>The buffer which contains the data. </td></tr>
    <tr><td class="paramname">nbytes</td><td>The number of bytes to write. </td></tr>
    <tr><td class="paramname">bytes_written</td><td>If non-NULL, set to the number of bytes written.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd><a class="el" href="group__apr__file__io.html#ga560d5c062d65e64c07d906d1207337d4">apr_file_write_full()</a> will write up to the specified number of bytes, but never more. If the OS cannot write that many bytes, the process/thread will block until they can be written. Exceptional error such as "out of space" or "pipe closed" will terminate with an error.</dd>
<dd>
It is possible for both bytes to be written and an error to be returned. And if *bytes_written is less than nbytes, an accompanying error is <em>always</em> returned.</dd>
<dd>
<a class="el" href="group___a_p_r___error.html#gaee1ce306c0ebf1701b34172310aa1bd5">APR_EINTR</a> is never returned. </dd></dl>

</div>
</div>
<a id="gacc7924dd7af1c2948b5b2ea6e5f77984"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gacc7924dd7af1c2948b5b2ea6e5f77984">&#9670;&nbsp;</a></span>apr_file_writev()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_writev </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const struct iovec *&#160;</td>
          <td class="paramname"><em>vec</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_size_t&#160;</td>
          <td class="paramname"><em>nvec</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_size_t *&#160;</td>
          <td class="paramname"><em>nbytes</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Write data from iovec array to the specified file. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The file descriptor to write to. </td></tr>
    <tr><td class="paramname">vec</td><td>The array from which to get the data to write to the file. </td></tr>
    <tr><td class="paramname">nvec</td><td>The number of elements in the struct iovec array. This must be smaller than <a class="el" href="group__apr__file__writev.html#gae04a4721139b2b252ea20e68883da4b4">APR_MAX_IOVEC_SIZE</a>. If it isn't, the function will fail with <a class="el" href="group___a_p_r___error.html#gae3ffc41994444e71ce522c036ca1d9a4">APR_EINVAL</a>. </td></tr>
    <tr><td class="paramname">nbytes</td><td>The number of bytes written.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>It is possible for both bytes to be written and an error to be returned. <a class="el" href="group___a_p_r___error.html#gaee1ce306c0ebf1701b34172310aa1bd5">APR_EINTR</a> is never returned.</dd>
<dd>
<a class="el" href="group__apr__file__io.html#gacc7924dd7af1c2948b5b2ea6e5f77984">apr_file_writev()</a> is available even if the underlying operating system doesn't provide writev(). </dd></dl>

</div>
</div>
<a id="ga24457e11f0db908b21b7e1742db4ed7b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga24457e11f0db908b21b7e1742db4ed7b">&#9670;&nbsp;</a></span>apr_file_writev_full()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_file_writev_full </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *&#160;</td>
          <td class="paramname"><em>thefile</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const struct iovec *&#160;</td>
          <td class="paramname"><em>vec</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_size_t&#160;</td>
          <td class="paramname"><em>nvec</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">apr_size_t *&#160;</td>
          <td class="paramname"><em>nbytes</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Write data from iovec array to the specified file, ensuring that all of the data is written before returning. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">thefile</td><td>The file descriptor to write to. </td></tr>
    <tr><td class="paramname">vec</td><td>The array from which to get the data to write to the file. </td></tr>
    <tr><td class="paramname">nvec</td><td>The number of elements in the struct iovec array. This must be smaller than <a class="el" href="group__apr__file__writev.html#gae04a4721139b2b252ea20e68883da4b4">APR_MAX_IOVEC_SIZE</a>. If it isn't, the function will fail with <a class="el" href="group___a_p_r___error.html#gae3ffc41994444e71ce522c036ca1d9a4">APR_EINVAL</a>. </td></tr>
    <tr><td class="paramname">nbytes</td><td>The number of bytes written.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd><a class="el" href="group__apr__file__io.html#ga24457e11f0db908b21b7e1742db4ed7b">apr_file_writev_full()</a> is available even if the underlying operating system doesn't provide writev(). </dd></dl>

</div>
</div>
<a id="ga5cc19828a668c362be0ad7a12b805cc0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga5cc19828a668c362be0ad7a12b805cc0">&#9670;&nbsp;</a></span>apr_temp_dir_get()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_temp_dir_get </td>
          <td>(</td>
          <td class="paramtype">const char **&#160;</td>
          <td class="paramname"><em>temp_dir</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *&#160;</td>
          <td class="paramname"><em>p</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Find an existing directory suitable as a temporary storage location. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">temp_dir</td><td>The temp directory. </td></tr>
    <tr><td class="paramname">p</td><td>The pool to use for any necessary allocations. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section remark"><dt>Remarks</dt><dd>This function uses an algorithm to search for a directory that an an application can use for temporary storage. </dd></dl>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>