<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>Apache Portable Runtime: Stat Functions</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.3.9.1 --> <div class="qindex"><a class="qindex" href="index.html">Main Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="annotated.html">Data Structures</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="functions.html">Data Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related Pages</a></div> <h1>Stat Functions<br> <small> [<a class="el" href="group__apr__file__info.html">File Information</a>]</small> </h1><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Data Structures</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__finfo__t.html">apr_finfo_t</a></td></tr> <tr><td colspan="2"><br><h2>Defines</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga2">APR_FINFO_LINK</a> 0x00000001</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga3">APR_FINFO_MTIME</a> 0x00000010</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga4">APR_FINFO_CTIME</a> 0x00000020</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga5">APR_FINFO_ATIME</a> 0x00000040</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga6">APR_FINFO_SIZE</a> 0x00000100</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga7">APR_FINFO_CSIZE</a> 0x00000200</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga8">APR_FINFO_DEV</a> 0x00001000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga9">APR_FINFO_INODE</a> 0x00002000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga10">APR_FINFO_NLINK</a> 0x00004000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga11">APR_FINFO_TYPE</a> 0x00008000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga12">APR_FINFO_USER</a> 0x00010000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga13">APR_FINFO_GROUP</a> 0x00020000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga14">APR_FINFO_UPROT</a> 0x00100000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga15">APR_FINFO_GPROT</a> 0x00200000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga16">APR_FINFO_WPROT</a> 0x00400000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga17">APR_FINFO_ICASE</a> 0x01000000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga18">APR_FINFO_NAME</a> 0x02000000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga19">APR_FINFO_MIN</a> 0x00008170</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga20">APR_FINFO_IDENT</a> 0x00003000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga21">APR_FINFO_OWNER</a> 0x00030000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga22">APR_FINFO_PROT</a> 0x00700000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga23">APR_FINFO_NORM</a> 0x0073b170</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga24">APR_FINFO_DIRENT</a> 0x02000000</td></tr> <tr><td colspan="2"><br><h2>Typedefs</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structapr__finfo__t.html">apr_finfo_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga0">apr_finfo_t</a></td></tr> <tr><td colspan="2"><br><h2>Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__apr__errno.html#ga0">apr_status_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__apr__file__stat.html#ga1">apr_stat</a> (<a class="el" href="structapr__finfo__t.html">apr_finfo_t</a> *finfo, const char *fname, apr_int32_t wanted, <a class="el" href="group__apr__pools.html#ga0">apr_pool_t</a> *pool)</td></tr> </table> <hr><h2>Define Documentation</h2> <a class="anchor" name="ga5" doxytag="apr_file_info.h::APR_FINFO_ATIME"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_ATIME 0x00000040 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Access Time </td> </tr> </table> <a class="anchor" name="ga7" doxytag="apr_file_info.h::APR_FINFO_CSIZE"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_CSIZE 0x00000200 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Storage size consumed by the file </td> </tr> </table> <a class="anchor" name="ga4" doxytag="apr_file_info.h::APR_FINFO_CTIME"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_CTIME 0x00000020 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Creation or inode-changed time </td> </tr> </table> <a class="anchor" name="ga8" doxytag="apr_file_info.h::APR_FINFO_DEV"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_DEV 0x00001000 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Device </td> </tr> </table> <a class="anchor" name="ga24" doxytag="apr_file_info.h::APR_FINFO_DIRENT"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_DIRENT 0x02000000 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> an atomic unix <a class="el" href="group__apr__dir.html#ga2">apr_dir_read()</a> </td> </tr> </table> <a class="anchor" name="ga15" doxytag="apr_file_info.h::APR_FINFO_GPROT"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_GPROT 0x00200000 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Group protection bits </td> </tr> </table> <a class="anchor" name="ga13" doxytag="apr_file_info.h::APR_FINFO_GROUP"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_GROUP 0x00020000 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Group </td> </tr> </table> <a class="anchor" name="ga17" doxytag="apr_file_info.h::APR_FINFO_ICASE"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_ICASE 0x01000000 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> if dev is case insensitive </td> </tr> </table> <a class="anchor" name="ga20" doxytag="apr_file_info.h::APR_FINFO_IDENT"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_IDENT 0x00003000 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> dev and inode </td> </tr> </table> <a class="anchor" name="ga9" doxytag="apr_file_info.h::APR_FINFO_INODE"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_INODE 0x00002000 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Inode </td> </tr> </table> <a class="anchor" name="ga2" doxytag="apr_file_info.h::APR_FINFO_LINK"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_LINK 0x00000001 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Stat the link not the file itself if it is a link </td> </tr> </table> <a class="anchor" name="ga19" doxytag="apr_file_info.h::APR_FINFO_MIN"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_MIN 0x00008170 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> type, mtime, ctime, atime, size </td> </tr> </table> <a class="anchor" name="ga3" doxytag="apr_file_info.h::APR_FINFO_MTIME"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_MTIME 0x00000010 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Modification Time </td> </tr> </table> <a class="anchor" name="ga18" doxytag="apr_file_info.h::APR_FINFO_NAME"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_NAME 0x02000000 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> ->name in proper case </td> </tr> </table> <a class="anchor" name="ga10" doxytag="apr_file_info.h::APR_FINFO_NLINK"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_NLINK 0x00004000 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Number of links </td> </tr> </table> <a class="anchor" name="ga23" doxytag="apr_file_info.h::APR_FINFO_NORM"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_NORM 0x0073b170 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> an atomic unix <a class="el" href="group__apr__file__stat.html#ga1">apr_stat()</a> </td> </tr> </table> <a class="anchor" name="ga21" doxytag="apr_file_info.h::APR_FINFO_OWNER"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_OWNER 0x00030000 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> user and group </td> </tr> </table> <a class="anchor" name="ga22" doxytag="apr_file_info.h::APR_FINFO_PROT"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_PROT 0x00700000 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> all protections </td> </tr> </table> <a class="anchor" name="ga6" doxytag="apr_file_info.h::APR_FINFO_SIZE"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_SIZE 0x00000100 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Size of the file </td> </tr> </table> <a class="anchor" name="ga11" doxytag="apr_file_info.h::APR_FINFO_TYPE"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_TYPE 0x00008000 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Type </td> </tr> </table> <a class="anchor" name="ga14" doxytag="apr_file_info.h::APR_FINFO_UPROT"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_UPROT 0x00100000 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> User protection bits </td> </tr> </table> <a class="anchor" name="ga12" doxytag="apr_file_info.h::APR_FINFO_USER"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_USER 0x00010000 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> User </td> </tr> </table> <a class="anchor" name="ga16" doxytag="apr_file_info.h::APR_FINFO_WPROT"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define APR_FINFO_WPROT 0x00400000 </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> World protection bits </td> </tr> </table> <hr><h2>Typedef Documentation</h2> <a class="anchor" name="ga0" doxytag="apr_file_info.h::apr_finfo_t"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">typedef struct <a class="el" href="structapr__finfo__t.html">apr_finfo_t</a> <a class="el" href="structapr__finfo__t.html">apr_finfo_t</a> </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> file info structure </td> </tr> </table> <hr><h2>Function Documentation</h2> <a class="anchor" name="ga1" doxytag="apr_file_info.h::apr_stat"></a><p> <table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"><a class="el" href="group__apr__errno.html#ga0">apr_status_t</a> apr_stat </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="structapr__finfo__t.html">apr_finfo_t</a> * </td> <td class="mdname" nowrap> <em>finfo</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>const char * </td> <td class="mdname" nowrap> <em>fname</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>apr_int32_t </td> <td class="mdname" nowrap> <em>wanted</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap><a class="el" href="group__apr__pools.html#ga0">apr_pool_t</a> * </td> <td class="mdname" nowrap> <em>pool</em></td> </tr> <tr> <td class="md"></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> get the specified file's stats. The file is specified by filename, instead of using a pre-opened file. <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>finfo</em> </td><td>Where to store the information about the file, which is never touched if the call fails. </td></tr> <tr><td valign="top"></td><td valign="top"><em>fname</em> </td><td>The name of the file to stat. </td></tr> <tr><td valign="top"></td><td valign="top"><em>wanted</em> </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 valign="top"></td><td valign="top"><em>pool</em> </td><td>the pool to use to allocate the new file. </td></tr> </table> </dl> </td> </tr> </table> <hr size="1"><address style="align: right;"><small>Generated on Sun Mar 20 19:52:27 2005 for Apache Portable Runtime by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.3.9.1 </small></address> </body> </html>