<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>system.h Source File</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.2.17 --> <center> <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> </center> <hr><h1>system.h</h1><a href="system_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 00005 <span class="preprocessor">#ifndef H_SYSTEM</span> 00006 <span class="preprocessor"></span><span class="preprocessor">#define H_SYSTEM</span> 00007 <span class="preprocessor"></span> 00008 <span class="preprocessor">#ifdef HAVE_CONFIG_H</span> 00009 <span class="preprocessor"></span><span class="preprocessor">#include "<a class="code" href="config_8h.html">config.h</a>"</span> 00010 <span class="preprocessor">#endif</span> 00011 <span class="preprocessor"></span> 00012 <span class="preprocessor">#if HAVE_SYSLOG_H</span> 00013 <span class="preprocessor"></span><span class="preprocessor">#include <syslog.h></span> 00014 <span class="preprocessor">#endif</span> 00015 <span class="preprocessor"></span> 00016 <span class="preprocessor">#include <sys/types.h></span> 00017 <span class="preprocessor">#include <sys/stat.h></span> 00018 <span class="preprocessor">#include <stdio.h></span> 00019 00020 <span class="preprocessor">#ifdef HAVE_SYS_PARAM_H</span> 00021 <span class="preprocessor"></span><span class="preprocessor">#include <sys/param.h></span> 00022 <span class="preprocessor">#endif</span> 00023 <span class="preprocessor"></span> 00024 <span class="comment">/* <unistd.h> should be included before any preprocessor test</span> 00025 <span class="comment"> of _POSIX_VERSION. */</span> 00026 <span class="preprocessor">#ifdef HAVE_UNISTD_H</span> 00027 <span class="preprocessor"></span><span class="preprocessor">#include <unistd.h></span> 00028 <span class="preprocessor">#if defined(__LCLINT__)</span> 00029 <span class="preprocessor"></span><span class="comment">/*@-superuser -declundef -incondefs @*/</span> <span class="comment">/* LCL: modifies clause missing */</span> 00030 <span class="keyword">extern</span> <span class="keywordtype">int</span> chroot (<span class="keyword">const</span> <span class="keywordtype">char</span> *__path) 00031 <span class="comment">/*@globals errno, systemState @*/</span> 00032 <span class="comment">/*@modifies errno, systemState @*/</span>; 00033 <span class="comment">/*@=superuser =declundef =incondefs @*/</span> 00034 <span class="preprocessor">#endif</span> 00035 <span class="preprocessor"></span><span class="preprocessor">#if !defined(__GLIBC__)</span> 00036 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">char</span> ** <a class="code" href="signature_8c.html#a1">environ</a>; 00037 <span class="preprocessor">#endif</span> 00038 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00039 <span class="preprocessor"></span> 00040 <span class="preprocessor">#if TIME_WITH_SYS_TIME</span> 00041 <span class="preprocessor"></span><span class="preprocessor"># include <sys/time.h></span> 00042 <span class="preprocessor"># include <time.h></span> 00043 <span class="preprocessor">#else</span> 00044 <span class="preprocessor"></span><span class="preprocessor"># if HAVE_SYS_TIME_H</span> 00045 <span class="preprocessor"></span><span class="preprocessor"># include <sys/time.h></span> 00046 <span class="preprocessor"># else</span> 00047 <span class="preprocessor"></span><span class="preprocessor"># include <time.h></span> 00048 <span class="preprocessor"># endif</span> 00049 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00050 <span class="preprocessor"></span> 00051 <span class="preprocessor">#if NEED_TIMEZONE</span> 00052 <span class="preprocessor"></span><span class="keyword">extern</span> time_t timezone; 00053 <span class="preprocessor">#endif</span> 00054 <span class="preprocessor"></span> 00055 <span class="comment">/* Since major is a function on SVR4, we can't use `ifndef major'. */</span> 00056 <span class="preprocessor">#if MAJOR_IN_MKDEV</span> 00057 <span class="preprocessor"></span><span class="preprocessor">#include <sys/mkdev.h></span> 00058 <span class="preprocessor">#define HAVE_MAJOR</span> 00059 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00060 <span class="preprocessor"></span><span class="preprocessor">#if MAJOR_IN_SYSMACROS</span> 00061 <span class="preprocessor"></span><span class="preprocessor">#include <sys/sysmacros.h></span> 00062 <span class="preprocessor">#define HAVE_MAJOR</span> 00063 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00064 <span class="preprocessor"></span><span class="preprocessor">#ifdef major </span><span class="comment">/* Might be defined in sys/types.h. */</span> 00065 <span class="preprocessor">#define HAVE_MAJOR</span> 00066 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00067 <span class="preprocessor"></span> 00068 <span class="preprocessor">#ifndef HAVE_MAJOR</span> <a name="l00069"></a><a class="code" href="system_8h.html#a0">00069</a> <span class="preprocessor"></span><span class="preprocessor">#define major(dev) (((dev) >> 8) & 0xff)</span> <a name="l00070"></a><a class="code" href="system_8h.html#a1">00070</a> <span class="preprocessor"></span><span class="preprocessor">#define minor(dev) ((dev) & 0xff)</span> <a name="l00071"></a><a class="code" href="system_8h.html#a2">00071</a> <span class="preprocessor"></span><span class="preprocessor">#define makedev(maj, min) (((maj) << 8) | (min))</span> 00072 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00073 <span class="preprocessor"></span><span class="preprocessor">#undef HAVE_MAJOR</span> 00074 <span class="preprocessor"></span> 00075 <span class="preprocessor">#ifdef HAVE_UTIME_H</span> 00076 <span class="preprocessor"></span><span class="preprocessor">#include <utime.h></span> 00077 <span class="preprocessor">#endif</span> 00078 <span class="preprocessor"></span> 00079 <span class="preprocessor">#ifdef HAVE_STRING_H</span> 00080 <span class="preprocessor"></span><span class="preprocessor"># if !STDC_HEADERS && HAVE_MEMORY_H</span> 00081 <span class="preprocessor"></span><span class="preprocessor"># include <memory.h></span> 00082 <span class="preprocessor"># endif</span> 00083 <span class="preprocessor"></span><span class="preprocessor"># include <string.h></span> 00084 <span class="preprocessor">#else</span> 00085 <span class="preprocessor"></span><span class="preprocessor"># include <strings.h></span> 00086 <span class="keywordtype">char</span> *<a class="code" href="system_8h.html#a31">memchr</a> (); 00087 <span class="preprocessor">#endif</span> 00088 <span class="preprocessor"></span> 00089 <span class="preprocessor">#if !defined(HAVE_STPCPY)</span> 00090 <span class="preprocessor"></span><span class="keywordtype">char</span> * <a class="code" href="system_8h.html#a32">stpcpy</a>(<span class="comment">/*@out@*/</span> <span class="keywordtype">char</span> * dest, <span class="keyword">const</span> <span class="keywordtype">char</span> * src); 00091 <span class="preprocessor">#endif</span> 00092 <span class="preprocessor"></span> 00093 <span class="preprocessor">#if !defined(HAVE_STPNCPY)</span> 00094 <span class="preprocessor"></span><span class="keywordtype">char</span> * <a class="code" href="system_8h.html#a33">stpncpy</a>(<span class="comment">/*@out@*/</span> <span class="keywordtype">char</span> * dest, <span class="keyword">const</span> <span class="keywordtype">char</span> * src, size_t n); 00095 <span class="preprocessor">#endif</span> 00096 <span class="preprocessor"></span> 00097 <span class="preprocessor">#include <errno.h></span> 00098 <span class="preprocessor">#ifndef errno</span> 00099 <span class="preprocessor"></span><span class="comment">/*@-declundef @*/</span> <a name="l00100"></a><a class="code" href="system_8h.html#a29">00100</a> <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="system_8h.html#a29">errno</a>; 00101 <span class="comment">/*@=declundef @*/</span> 00102 <span class="preprocessor">#endif</span> 00103 <span class="preprocessor"></span> 00104 <span class="preprocessor">#ifdef STDC_HEADERS</span> 00105 <span class="preprocessor"></span><span class="comment">/*@-macrounrecog -incondefs -globuse -mustmod @*/</span> <span class="comment">/* FIX: shrug */</span> 00106 <span class="preprocessor">#define getopt system_getopt</span> 00107 <span class="preprocessor"></span><span class="comment">/*@=macrounrecog =incondefs =globuse =mustmod @*/</span> 00108 <span class="comment">/*@-skipansiheaders@*/</span> 00109 <span class="preprocessor">#include <stdlib.h></span> 00110 <span class="comment">/*@=skipansiheaders@*/</span> 00111 <span class="preprocessor">#undef getopt</span> 00112 <span class="preprocessor"></span><span class="preprocessor">#if defined(__LCLINT__)</span> 00113 <span class="preprocessor"></span><span class="comment">/*@-declundef -incondefs @*/</span> <span class="comment">/* LCL: modifies clause missing */</span> 00114 <span class="keyword">extern</span> <span class="keywordtype">char</span> * <a class="code" href="system_8h.html#a35">realpath</a> (<span class="keyword">const</span> <span class="keywordtype">char</span> * file_name, <span class="comment">/*@out@*/</span> <span class="keywordtype">char</span> * resolved_name) 00115 <span class="comment">/*@globals errno, fileSystem @*/</span> 00116 <span class="comment">/*@requires maxSet(resolved_name) >= (PATH_MAX - 1); @*/</span> 00117 <span class="comment">/*@modifies *resolved_name, errno, fileSystem @*/</span>; 00118 <span class="comment">/*@=declundef =incondefs @*/</span> 00119 <span class="preprocessor">#endif</span> 00120 <span class="preprocessor"></span><span class="preprocessor">#else </span><span class="comment">/* not STDC_HEADERS */</span> 00121 <span class="keywordtype">char</span> *<a class="code" href="system_8h.html#a34">getenv</a> (<span class="keyword">const</span> <span class="keywordtype">char</span> *name); 00122 <span class="preprocessor">#if ! HAVE_REALPATH</span> 00123 <span class="preprocessor"></span><span class="keywordtype">char</span> *<a class="code" href="system_8h.html#a35">realpath</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *path, <span class="keywordtype">char</span> resolved_path []); 00124 <span class="preprocessor">#endif</span> 00125 <span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* STDC_HEADERS */</span> 00126 00127 <span class="comment">/* XXX solaris2.5.1 has not */</span> 00128 <span class="preprocessor">#if !defined(EXIT_FAILURE)</span> <a name="l00129"></a><a class="code" href="system_8h.html#a3">00129</a> <span class="preprocessor"></span><span class="preprocessor">#define EXIT_FAILURE 1</span> 00130 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00131 <span class="preprocessor"></span> 00132 <span class="preprocessor">#ifdef HAVE_FCNTL_H</span> 00133 <span class="preprocessor"></span><span class="preprocessor">#include <fcntl.h></span> 00134 <span class="preprocessor">#else</span> 00135 <span class="preprocessor"></span><span class="preprocessor">#include <sys/file.h></span> 00136 <span class="preprocessor">#endif</span> 00137 <span class="preprocessor"></span> 00138 <span class="preprocessor">#if !defined(SEEK_SET) && !defined(__LCLINT__)</span> <a name="l00139"></a><a class="code" href="system_8h.html#a4">00139</a> <span class="preprocessor"></span><span class="preprocessor">#define SEEK_SET 0</span> <a name="l00140"></a><a class="code" href="system_8h.html#a5">00140</a> <span class="preprocessor"></span><span class="preprocessor">#define SEEK_CUR 1</span> <a name="l00141"></a><a class="code" href="system_8h.html#a6">00141</a> <span class="preprocessor"></span><span class="preprocessor">#define SEEK_END 2</span> 00142 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00143 <span class="preprocessor"></span><span class="preprocessor">#if !defined(F_OK) && !defined(__LCLINT__)</span> <a name="l00144"></a><a class="code" href="system_8h.html#a7">00144</a> <span class="preprocessor"></span><span class="preprocessor">#define F_OK 0</span> <a name="l00145"></a><a class="code" href="system_8h.html#a8">00145</a> <span class="preprocessor"></span><span class="preprocessor">#define X_OK 1</span> <a name="l00146"></a><a class="code" href="system_8h.html#a9">00146</a> <span class="preprocessor"></span><span class="preprocessor">#define W_OK 2</span> <a name="l00147"></a><a class="code" href="system_8h.html#a10">00147</a> <span class="preprocessor"></span><span class="preprocessor">#define R_OK 4</span> 00148 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00149 <span class="preprocessor"></span> 00150 <span class="preprocessor">#ifdef HAVE_DIRENT_H</span> 00151 <span class="preprocessor"></span><span class="preprocessor"># include <dirent.h></span> 00152 <span class="preprocessor"># define NLENGTH(direct) (strlen((direct)->d_name))</span> 00153 <span class="preprocessor"></span><span class="preprocessor">#else </span><span class="comment">/* not HAVE_DIRENT_H */</span> <a name="l00154"></a><a class="code" href="system_8h.html#a11">00154</a> <span class="preprocessor"># define dirent direct</span> <a name="l00155"></a><a class="code" href="system_8h.html#a12">00155</a> <span class="preprocessor"></span><span class="preprocessor"># define NLENGTH(direct) ((direct)->d_namlen)</span> 00156 <span class="preprocessor"></span><span class="preprocessor"># ifdef HAVE_SYS_NDIR_H</span> 00157 <span class="preprocessor"></span><span class="preprocessor"># include <sys/ndir.h></span> 00158 <span class="preprocessor"># endif </span><span class="comment">/* HAVE_SYS_NDIR_H */</span> 00159 <span class="preprocessor"># ifdef HAVE_SYS_DIR_H</span> 00160 <span class="preprocessor"></span><span class="preprocessor"># include <sys/dir.h></span> 00161 <span class="preprocessor"># endif </span><span class="comment">/* HAVE_SYS_DIR_H */</span> 00162 <span class="preprocessor"># ifdef HAVE_NDIR_H</span> 00163 <span class="preprocessor"></span><span class="preprocessor"># include <ndir.h></span> 00164 <span class="preprocessor"># endif </span><span class="comment">/* HAVE_NDIR_H */</span> 00165 <span class="preprocessor">#endif </span><span class="comment">/* HAVE_DIRENT_H */</span> 00166 00167 <span class="preprocessor">#if defined(__LCLINT__)</span> 00168 <span class="preprocessor"></span><span class="comment">/*@-declundef -incondefs @*/</span> <span class="comment">/* LCL: missing annotation */</span> 00169 <span class="comment">/*@only@*/</span> <span class="keywordtype">void</span> * <a class="code" href="system_8h.html#a36">alloca</a> (size_t __size) 00170 <span class="comment">/*@ensures MaxSet(result) == (__size - 1) @*/</span> 00171 <span class="comment">/*@*/</span>; 00172 <span class="comment">/*@=declundef =incondefs @*/</span> 00173 <span class="preprocessor">#endif</span> 00174 <span class="preprocessor"></span> 00175 <span class="preprocessor">#ifdef __GNUC__</span> 00176 <span class="preprocessor"></span><span class="preprocessor"># undef alloca</span> 00177 <span class="preprocessor"></span><span class="preprocessor"># define alloca __builtin_alloca</span> 00178 <span class="preprocessor"></span><span class="preprocessor">#else</span> 00179 <span class="preprocessor"></span><span class="preprocessor"># ifdef HAVE_ALLOCA_H</span> 00180 <span class="preprocessor"></span><span class="preprocessor"># include <alloca.h></span> 00181 <span class="preprocessor"># else</span> 00182 <span class="preprocessor"></span><span class="preprocessor"># ifndef _AIX</span> 00183 <span class="preprocessor"></span><span class="comment">/* AIX alloca decl has to be the first thing in the file, bletch! */</span> 00184 <span class="keywordtype">char</span> *<a class="code" href="system_8h.html#a36">alloca</a> (); 00185 <span class="preprocessor"># endif</span> 00186 <span class="preprocessor"></span><span class="preprocessor"># endif</span> 00187 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00188 <span class="preprocessor"></span> 00189 <span class="preprocessor">#if defined (__GLIBC__) && defined(__LCLINT__)</span> 00190 <span class="preprocessor"></span><span class="comment">/*@-declundef@*/</span> 00191 <span class="comment">/*@unchecked@*/</span> 00192 <span class="keyword">extern</span> __const __int32_t *__ctype_tolower; 00193 <span class="comment">/*@unchecked@*/</span> 00194 <span class="keyword">extern</span> __const __int32_t *__ctype_toupper; 00195 <span class="comment">/*@=declundef@*/</span> 00196 <span class="preprocessor">#include <ctype.h></span> 00197 00198 <span class="comment">/*@-exportlocal@*/</span> 00199 <span class="keyword">extern</span> <span class="keywordtype">int</span> isalnum(<span class="keywordtype">int</span>) __THROW <span class="comment">/*@*/</span>; 00200 <span class="keyword">extern</span> <span class="keywordtype">int</span> iscntrl(<span class="keywordtype">int</span>) __THROW <span class="comment">/*@*/</span>; 00201 <span class="keyword">extern</span> <span class="keywordtype">int</span> isgraph(<span class="keywordtype">int</span>) __THROW <span class="comment">/*@*/</span>; 00202 <span class="keyword">extern</span> <span class="keywordtype">int</span> islower(<span class="keywordtype">int</span>) __THROW <span class="comment">/*@*/</span>; 00203 <span class="keyword">extern</span> <span class="keywordtype">int</span> ispunct(<span class="keywordtype">int</span>) __THROW <span class="comment">/*@*/</span>; 00204 <span class="keyword">extern</span> <span class="keywordtype">int</span> isxdigit(<span class="keywordtype">int</span>) __THROW <span class="comment">/*@*/</span>; 00205 <span class="keyword">extern</span> <span class="keywordtype">int</span> isascii(<span class="keywordtype">int</span>) __THROW <span class="comment">/*@*/</span>; 00206 <span class="keyword">extern</span> <span class="keywordtype">int</span> toascii(<span class="keywordtype">int</span>) __THROW <span class="comment">/*@*/</span>; 00207 <span class="keyword">extern</span> <span class="keywordtype">int</span> _toupper(<span class="keywordtype">int</span>) __THROW <span class="comment">/*@*/</span>; 00208 <span class="keyword">extern</span> <span class="keywordtype">int</span> _tolower(<span class="keywordtype">int</span>) __THROW <span class="comment">/*@*/</span>; 00209 <span class="comment">/*@=exportlocal@*/</span> 00210 00211 <span class="preprocessor">#endif</span> 00212 <span class="preprocessor"></span> 00213 <span class="preprocessor">#if HAVE_SYS_MMAN_H && !defined(__LCLINT__)</span> 00214 <span class="preprocessor"></span><span class="preprocessor">#include <sys/mman.h></span> 00215 <span class="preprocessor">#endif</span> 00216 <span class="preprocessor"></span> 00217 <span class="comment">/* XXX FIXME: popt on sunos4.1.3: <sys/resource.h> requires <sys/time.h> */</span> 00218 <span class="preprocessor">#if HAVE_SYS_RESOURCE_H && HAVE_SYS_TIME_H</span> 00219 <span class="preprocessor"></span><span class="preprocessor">#include <sys/resource.h></span> 00220 <span class="preprocessor">#endif</span> 00221 <span class="preprocessor"></span> 00222 <span class="preprocessor">#if HAVE_SYS_UTSNAME_H</span> 00223 <span class="preprocessor"></span><span class="preprocessor">#include <sys/utsname.h></span> 00224 <span class="preprocessor">#endif</span> 00225 <span class="preprocessor"></span> 00226 <span class="preprocessor">#if HAVE_SYS_WAIT_H</span> 00227 <span class="preprocessor"></span><span class="preprocessor">#include <sys/wait.h></span> 00228 <span class="preprocessor">#endif</span> 00229 <span class="preprocessor"></span> 00230 <span class="preprocessor">#if HAVE_GETOPT_H</span> 00231 <span class="preprocessor"></span><span class="comment">/*@-noparams@*/</span> 00232 <span class="preprocessor">#include <getopt.h></span> 00233 <span class="comment">/*@=noparams@*/</span> 00234 <span class="preprocessor">#endif</span> 00235 <span class="preprocessor"></span> 00236 <span class="preprocessor">#if HAVE_GRP_H</span> 00237 <span class="preprocessor"></span><span class="preprocessor">#include <grp.h></span> 00238 <span class="preprocessor">#endif</span> 00239 <span class="preprocessor"></span> 00240 <span class="preprocessor">#if HAVE_LIMITS_H</span> 00241 <span class="preprocessor"></span><span class="preprocessor">#include <limits.h></span> 00242 <span class="preprocessor">#endif</span> 00243 <span class="preprocessor"></span> 00244 <span class="preprocessor">#if HAVE_ERR_H</span> 00245 <span class="preprocessor"></span><span class="preprocessor">#include <err.h></span> 00246 <span class="preprocessor">#endif</span> 00247 <span class="preprocessor"></span> 00248 <span class="preprocessor">#if HAVE_MALLOC_H && !defined(__LCLINT__)</span> 00249 <span class="preprocessor"></span><span class="preprocessor">#include <malloc.h></span> 00250 <span class="preprocessor">#endif</span> 00251 <span class="preprocessor"></span> 00252 <span class="comment">/*@-declundef -incondefs @*/</span> <span class="comment">/* FIX: these are macros */</span> 00255 <span class="comment">/*@mayexit@*/</span> <span class="comment">/*@only@*/</span> <span class="comment">/*@out@*/</span> <span class="keywordtype">void</span> * <a class="code" href="rpmmalloc_8c.html#a1">xmalloc</a> (size_t size) 00256 <span class="comment">/*@globals errno @*/</span> 00257 <span class="comment">/*@ensures MaxSet(result) == (size - 1) @*/</span> 00258 <span class="comment">/*@modifies errno @*/</span>; 00259 00262 <span class="comment">/*@mayexit@*/</span> <span class="comment">/*@only@*/</span> <span class="keywordtype">void</span> * <a class="code" href="rpmmalloc_8c.html#a2">xcalloc</a> (size_t nmemb, size_t size) 00263 <span class="comment">/*@ensures MaxSet(result) == (nmemb - 1) @*/</span> 00264 <span class="comment">/*@*/</span>; 00265 00269 <span class="comment">/*@mayexit@*/</span> <span class="comment">/*@only@*/</span> <span class="keywordtype">void</span> * <a class="code" href="rpmmalloc_8c.html#a3">xrealloc</a> (<span class="comment">/*@null@*/</span> <span class="comment">/*@only@*/</span> <span class="keywordtype">void</span> * ptr, 00270 size_t size) 00271 <span class="comment">/*@ensures MaxSet(result) == (size - 1) @*/</span> 00272 <span class="comment">/*@modifies *ptr @*/</span>; 00273 00276 <span class="comment">/*@mayexit@*/</span> <span class="comment">/*@only@*/</span> <span class="keywordtype">char</span> * <a class="code" href="rpmmalloc_8c.html#a4">xstrdup</a> (<span class="keyword">const</span> <span class="keywordtype">char</span> *str) 00277 <span class="comment">/*@*/</span>; 00278 <span class="comment">/*@=declundef =incondefs @*/</span> 00279 00282 <span class="comment">/*@unused@*/</span> <span class="comment">/*@exits@*/</span> <span class="comment">/*@only@*/</span> <span class="keywordtype">void</span> * <a class="code" href="rpmmalloc_8c.html#a0">vmefail</a>(size_t size) 00283 <span class="comment">/*@*/</span>; 00284 00285 <span class="preprocessor">#if HAVE_MCHECK_H</span> 00286 <span class="preprocessor"></span><span class="preprocessor">#include <mcheck.h></span> 00287 <span class="preprocessor">#if defined(__LCLINT__)</span> 00288 <span class="preprocessor"></span><span class="comment">/*@-declundef -incondefs @*/</span> <span class="comment">/* LCL: missing annotations */</span> 00289 <span class="preprocessor">#if 0</span> 00290 <span class="preprocessor"></span><span class="keyword">enum</span> mcheck_status 00291 { 00292 MCHECK_DISABLED = -1, <span class="comment">/* Consistency checking is not turned on. */</span> 00293 MCHECK_OK, <span class="comment">/* Block is fine. */</span> 00294 MCHECK_FREE, <span class="comment">/* Block freed twice. */</span> 00295 MCHECK_HEAD, <span class="comment">/* Memory before the block was clobbered. */</span> 00296 MCHECK_TAIL <span class="comment">/* Memory after the block was clobbered. */</span> 00297 }; 00298 <span class="preprocessor">#endif</span> 00299 <span class="preprocessor"></span> 00300 <span class="keyword">extern</span> <span class="keywordtype">int</span> mcheck (<span class="keywordtype">void</span> (*__abortfunc) (<span class="keyword">enum</span> mcheck_status)) 00301 <span class="comment">/*@globals internalState@*/</span> 00302 <span class="comment">/*@modifies internalState @*/</span>; 00303 <span class="keyword">extern</span> <span class="keywordtype">int</span> mcheck_pedantic (<span class="keywordtype">void</span> (*__abortfunc) (<span class="keyword">enum</span> mcheck_status)) 00304 <span class="comment">/*@globals internalState@*/</span> 00305 <span class="comment">/*@modifies internalState @*/</span>; 00306 <span class="keyword">extern</span> <span class="keywordtype">void</span> mcheck_check_all (<span class="keywordtype">void</span>) 00307 <span class="comment">/*@globals internalState@*/</span> 00308 <span class="comment">/*@modifies internalState @*/</span>; 00309 <span class="keyword">extern</span> <span class="keyword">enum</span> mcheck_status mprobe (<span class="keywordtype">void</span> *__ptr) 00310 <span class="comment">/*@globals internalState@*/</span> 00311 <span class="comment">/*@modifies internalState @*/</span>; 00312 <span class="keyword">extern</span> <span class="keywordtype">void</span> mtrace (<span class="keywordtype">void</span>) 00313 <span class="comment">/*@globals internalState@*/</span> 00314 <span class="comment">/*@modifies internalState @*/</span>; 00315 <span class="keyword">extern</span> <span class="keywordtype">void</span> muntrace (<span class="keywordtype">void</span>) 00316 <span class="comment">/*@globals internalState@*/</span> 00317 <span class="comment">/*@modifies internalState @*/</span>; 00318 <span class="comment">/*@=declundef =incondefs @*/</span> 00319 <span class="preprocessor">#endif </span><span class="comment">/* defined(__LCLINT__) */</span> 00320 00321 <span class="comment">/* Memory allocation via macro defs to get meaningful locations from mtrace() */</span> 00322 <span class="preprocessor">#if defined(__GNUC__)</span> 00323 <span class="preprocessor"></span><span class="preprocessor">#define xmalloc(_size) (malloc(_size) ? : vmefail(_size))</span> 00324 <span class="preprocessor"></span><span class="preprocessor">#define xcalloc(_nmemb, _size) (calloc((_nmemb), (_size)) ? : vmefail(_size))</span> 00325 <span class="preprocessor"></span><span class="preprocessor">#define xrealloc(_ptr, _size) (realloc((_ptr), (_size)) ? : vmefail(_size))</span> 00326 <span class="preprocessor"></span><span class="preprocessor">#define xstrdup(_str) (strcpy((malloc(strlen(_str)+1) ? : vmefail(strlen(_str)+1)), (_str)))</span> 00327 <span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* defined(__GNUC__) */</span> 00328 <span class="preprocessor">#endif </span><span class="comment">/* HAVE_MCHECK_H */</span> 00329 00330 <span class="comment">/* Retrofit glibc __progname */</span> 00331 <span class="preprocessor">#if defined __GLIBC__ && __GLIBC__ >= 2</span> 00332 <span class="preprocessor"></span><span class="preprocessor">#if __GLIBC_MINOR__ >= 1</span> 00333 <span class="preprocessor"></span><span class="preprocessor">#define __progname __assert_program_name</span> 00334 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00335 <span class="preprocessor"></span><span class="preprocessor">#define setprogname(pn)</span> 00336 <span class="preprocessor"></span><span class="preprocessor">#else</span> <a name="l00337"></a><a class="code" href="system_8h.html#a13">00337</a> <span class="preprocessor"></span><span class="preprocessor">#define __progname program_name</span> <a name="l00338"></a><a class="code" href="system_8h.html#a14">00338</a> <span class="preprocessor"></span><span class="preprocessor">#define setprogname(pn) \</span> 00339 <span class="preprocessor"> { if ((__progname = strrchr(pn, '/')) != NULL) __progname++; \</span> 00340 <span class="preprocessor"> else __progname = pn; \</span> 00341 <span class="preprocessor"> }</span> 00342 <span class="preprocessor"></span><span class="preprocessor">#endif</span> <a name="l00343"></a><a class="code" href="system_8h.html#a30">00343</a> <span class="preprocessor"></span><span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="system_8h.html#a13">__progname</a>; 00344 00345 <span class="preprocessor">#if HAVE_NETDB_H</span> 00346 <span class="preprocessor"></span><span class="preprocessor">#include <netdb.h></span> 00347 <span class="preprocessor">#endif</span> 00348 <span class="preprocessor"></span> 00349 <span class="preprocessor">#if HAVE_PWD_H</span> 00350 <span class="preprocessor"></span><span class="preprocessor">#include <pwd.h></span> 00351 <span class="preprocessor">#endif</span> 00352 <span class="preprocessor"></span> 00353 <span class="comment">/* Take care of NLS matters. */</span> 00354 00355 <span class="preprocessor">#if HAVE_LOCALE_H</span> 00356 <span class="preprocessor"></span><span class="preprocessor"># include <locale.h></span> 00357 <span class="preprocessor">#endif</span> 00358 <span class="preprocessor"></span><span class="preprocessor">#if !HAVE_SETLOCALE</span> <a name="l00359"></a><a class="code" href="system_8h.html#a15">00359</a> <span class="preprocessor"></span><span class="preprocessor"># define setlocale(Category, Locale) </span><span class="comment">/* empty */</span> 00360 <span class="preprocessor">#endif</span> 00361 <span class="preprocessor"></span> 00362 <span class="preprocessor">#if ENABLE_NLS && !defined(__LCLINT__)</span> 00363 <span class="preprocessor"></span><span class="preprocessor"># include <libintl.h></span> 00364 <span class="preprocessor"># define _(Text) gettext (Text)</span> 00365 <span class="preprocessor"></span><span class="preprocessor">#else</span> 00366 <span class="preprocessor"></span><span class="preprocessor"># undef bindtextdomain</span> <a name="l00367"></a><a class="code" href="system_8h.html#a16">00367</a> <span class="preprocessor"></span><span class="preprocessor"># define bindtextdomain(Domain, Directory) </span><span class="comment">/* empty */</span> 00368 <span class="preprocessor"># undef textdomain</span> <a name="l00369"></a><a class="code" href="system_8h.html#a17">00369</a> <span class="preprocessor"></span><span class="preprocessor"># define textdomain(Domain) </span><span class="comment">/* empty */</span> <a name="l00370"></a><a class="code" href="system_8h.html#a18">00370</a> <span class="preprocessor"># define _(Text) Text</span> 00371 <span class="preprocessor"></span><span class="preprocessor"># undef dgettext</span> <a name="l00372"></a><a class="code" href="system_8h.html#a19">00372</a> <span class="preprocessor"></span><span class="preprocessor"># define dgettext(DomainName, Text) Text</span> 00373 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00374 <span class="preprocessor"></span> <a name="l00375"></a><a class="code" href="system_8h.html#a20">00375</a> <span class="preprocessor">#define N_(Text) Text</span> 00376 <span class="preprocessor"></span> 00377 <span class="comment">/* ============== from misc/miscfn.h */</span> 00378 00379 <span class="preprocessor">#if !defined(USE_GNU_GLOB)</span> 00380 <span class="preprocessor"></span><span class="preprocessor">#if HAVE_FNMATCH_H</span> 00381 <span class="preprocessor"></span><span class="comment">/*@-noparams@*/</span> 00382 <span class="preprocessor">#include <fnmatch.h></span> 00383 <span class="comment">/*@=noparams@*/</span> 00384 <span class="preprocessor">#endif</span> 00385 <span class="preprocessor"></span> 00386 <span class="preprocessor">#if HAVE_GLOB_H</span> 00387 <span class="preprocessor"></span><span class="comment">/*@-noparams@*/</span> 00388 <span class="preprocessor">#include <glob.h></span> 00389 <span class="comment">/*@=noparams@*/</span> 00390 <span class="preprocessor">#endif</span> 00391 <span class="preprocessor"></span><span class="preprocessor">#else</span> 00392 <span class="preprocessor"></span><span class="comment">/*@-noparams@*/</span> 00393 <span class="preprocessor">#include "misc/glob.h"</span> 00394 <span class="preprocessor">#include "misc/fnmatch.h"</span> 00395 <span class="comment">/*@=noparams@*/</span> 00396 <span class="preprocessor">#endif</span> 00397 <span class="preprocessor"></span> 00398 <span class="preprocessor">#if defined(__LCLINT__)</span> 00399 <span class="preprocessor"></span><span class="comment">/*@-declundef -incondefs @*/</span> <span class="comment">/* LCL: missing annotation */</span> 00400 <span class="preprocessor">#if 0</span> 00401 <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="comment">/*@concrete@*/</span> <span class="keyword">struct</span> 00402 <span class="keyword"> </span>{ 00403 size_t gl_pathc; 00404 <span class="keywordtype">char</span> **gl_pathv; 00405 size_t gl_offs; 00406 <span class="keywordtype">int</span> gl_flags; 00407 00408 void (*gl_closedir) (<span class="keywordtype">void</span> *); 00409 <span class="preprocessor">#ifdef _GNU_SOURCE</span> 00410 <span class="preprocessor"></span> <span class="keyword">struct </span><a class="code" href="system_8h.html#a11">dirent</a> *(*gl_readdir) (void *); 00411 <span class="preprocessor">#else</span> 00412 <span class="preprocessor"></span> <span class="keywordtype">void</span> *(*gl_readdir) (<span class="keywordtype">void</span> *); 00413 <span class="preprocessor">#endif</span> 00414 <span class="preprocessor"></span> ptr_t (*gl_opendir) (<span class="keyword">const</span> <span class="keywordtype">char</span> *); 00415 <span class="preprocessor">#ifdef _GNU_SOURCE</span> 00416 <span class="preprocessor"></span> int (*gl_lstat) (<span class="keyword">const</span> <span class="keywordtype">char</span> *restrict, <span class="keyword">struct </span>stat *restrict); 00417 int (*gl_stat) (<span class="keyword">const</span> <span class="keywordtype">char</span> *restrict, <span class="keyword">struct </span>stat *restrict); 00418 <span class="preprocessor">#else</span> 00419 <span class="preprocessor"></span> int (*gl_lstat) (<span class="keyword">const</span> <span class="keywordtype">char</span> *restrict, <span class="keywordtype">void</span> *restrict); 00420 int (*gl_stat) (<span class="keyword">const</span> <span class="keywordtype">char</span> *restrict, <span class="keywordtype">void</span> *restrict); 00421 <span class="preprocessor">#endif</span> 00422 <span class="preprocessor"></span> } glob_t; 00423 <span class="preprocessor">#endif</span> 00424 <span class="preprocessor"></span> 00425 <span class="preprocessor">#if 0</span> 00426 <span class="preprocessor"></span><span class="comment">/*@-constuse@*/</span> 00427 <span class="comment">/*@constant int GLOB_ERR@*/</span> 00428 <span class="comment">/*@constant int GLOB_MARK@*/</span> 00429 <span class="comment">/*@constant int GLOB_NOSORT@*/</span> 00430 <span class="comment">/*@constant int GLOB_DOOFFS@*/</span> 00431 <span class="comment">/*@constant int GLOB_NOCHECK@*/</span> 00432 <span class="comment">/*@constant int GLOB_APPEND@*/</span> 00433 <span class="comment">/*@constant int GLOB_NOESCAPE@*/</span> 00434 <span class="comment">/*@constant int GLOB_PERIOD@*/</span> 00435 00436 <span class="preprocessor">#ifdef _GNU_SOURCE</span> 00437 <span class="preprocessor"></span><span class="comment">/*@constant int GLOB_MAGCHAR@*/</span> 00438 <span class="comment">/*@constant int GLOB_ALTDIRFUNC@*/</span> 00439 <span class="comment">/*@constant int GLOB_BRACE@*/</span> 00440 <span class="comment">/*@constant int GLOB_NOMAGIC@*/</span> 00441 <span class="comment">/*@constant int GLOB_TILDE@*/</span> 00442 <span class="comment">/*@constant int GLOB_ONLYDIR@*/</span> 00443 <span class="comment">/*@constant int GLOB_TILDE_CHECK@*/</span> 00444 <span class="preprocessor">#endif</span> 00445 <span class="preprocessor"></span> 00446 <span class="comment">/*@constant int GLOB_FLAGS@*/</span> 00447 00448 <span class="comment">/*@constant int GLOB_NOSPACE@*/</span> 00449 <span class="comment">/*@constant int GLOB_ABORTED@*/</span> 00450 <span class="comment">/*@constant int GLOB_NOMATCH@*/</span> 00451 <span class="comment">/*@constant int GLOB_NOSYS@*/</span> 00452 <span class="preprocessor">#ifdef _GNU_SOURCE</span> 00453 <span class="preprocessor"></span><span class="comment">/*@constant int GLOB_ABEND@*/</span> 00454 <span class="preprocessor">#endif</span> 00455 <span class="preprocessor"></span><span class="comment">/*@=constuse@*/</span> 00456 <span class="preprocessor">#endif</span> 00457 <span class="preprocessor"></span> 00458 <span class="keyword">extern</span> <span class="keywordtype">int</span> glob (<span class="keyword">const</span> <span class="keywordtype">char</span> *pattern, <span class="keywordtype">int</span> flags, 00459 <span class="keywordtype">int</span> (*errfunc) (<span class="keyword">const</span> <span class="keywordtype">char</span> *, <span class="keywordtype">int</span>), 00460 <span class="comment">/*@out@*/</span> glob_t *pglob) 00461 <span class="comment">/*@globals errno, fileSystem @*/</span> 00462 <span class="comment">/*@modifies *pglob, errno, fileSystem @*/</span>; 00463 <span class="comment">/* XXX only annotation is a white lie */</span> 00464 <span class="keyword">extern</span> <span class="keywordtype">void</span> globfree (<span class="comment">/*@only@*/</span> glob_t *pglob) 00465 <span class="comment">/*@modifies *pglob @*/</span>; 00466 <span class="preprocessor">#ifdef _GNU_SOURCE</span> 00467 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">int</span> glob_pattern_p (<span class="keyword">const</span> <span class="keywordtype">char</span> *pattern, <span class="keywordtype">int</span> quote) 00468 <span class="comment">/*@*/</span>; 00469 <span class="preprocessor">#endif</span> 00470 <span class="preprocessor"></span> 00471 <span class="preprocessor">#if 0</span> 00472 <span class="preprocessor"></span><span class="comment">/*@-constuse@*/</span> 00473 <span class="comment">/*@constant int FNM_PATHNAME@*/</span> 00474 <span class="comment">/*@constant int FNM_NOESCAPE@*/</span> 00475 <span class="comment">/*@constant int FNM_PERIOD@*/</span> 00476 00477 <span class="preprocessor">#ifdef _GNU_SOURCE</span> 00478 <span class="preprocessor"></span><span class="comment">/*@constant int FNM_FILE_NAME@*/</span> <span class="comment">/* GNU extension */</span> 00479 <span class="comment">/*@constant int FNM_LEADING_DIR@*/</span> <span class="comment">/* GNU extension */</span> 00480 <span class="comment">/*@constant int FNM_CASEFOLD@*/</span> <span class="comment">/* GNU extension */</span> 00481 <span class="comment">/*@constant int FNM_EXTMATCH@*/</span> <span class="comment">/* GNU extension */</span> 00482 <span class="preprocessor">#endif</span> 00483 <span class="preprocessor"></span> 00484 <span class="comment">/*@constant int FNM_NOMATCH@*/</span> 00485 00486 <span class="preprocessor">#ifdef _XOPEN_SOURCE</span> 00487 <span class="preprocessor"></span><span class="comment">/*@constant int FNM_NOSYS@*/</span> <span class="comment">/* X/Open */</span> 00488 <span class="preprocessor">#endif</span> 00489 <span class="preprocessor"></span><span class="comment">/*@=constuse@*/</span> 00490 <span class="preprocessor">#endif</span> 00491 <span class="preprocessor"></span> 00492 <span class="keyword">extern</span> <span class="keywordtype">int</span> fnmatch (<span class="keyword">const</span> <span class="keywordtype">char</span> *pattern, <span class="keyword">const</span> <span class="keywordtype">char</span> *string, <span class="keywordtype">int</span> flags) 00493 <span class="comment">/*@*/</span>; 00494 <span class="comment">/*@=declundef =incondefs @*/</span> 00495 <span class="preprocessor">#endif</span> 00496 <span class="preprocessor"></span> 00497 <span class="preprocessor">#if ! HAVE_S_IFSOCK</span> <a name="l00498"></a><a class="code" href="system_8h.html#a21">00498</a> <span class="preprocessor"></span><span class="preprocessor">#define S_IFSOCK (0xc000)</span> 00499 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00500 <span class="preprocessor"></span> 00501 <span class="preprocessor">#if ! HAVE_S_ISLNK</span> <a name="l00502"></a><a class="code" href="system_8h.html#a22">00502</a> <span class="preprocessor"></span><span class="preprocessor">#define S_ISLNK(mode) ((mode & 0xf000) == S_IFLNK)</span> 00503 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00504 <span class="preprocessor"></span> 00505 <span class="preprocessor">#if ! HAVE_S_ISSOCK</span> <a name="l00506"></a><a class="code" href="system_8h.html#a23">00506</a> <span class="preprocessor"></span><span class="preprocessor">#define S_ISSOCK(mode) ((mode & 0xf000) == S_IFSOCK)</span> 00507 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00508 <span class="preprocessor"></span> 00509 <span class="preprocessor">#if NEED_STRINGS_H</span> 00510 <span class="preprocessor"></span><span class="preprocessor">#include <strings.h></span> 00511 <span class="preprocessor">#endif</span> 00512 <span class="preprocessor"></span> 00513 <span class="preprocessor">#if NEED_MYREALLOC</span> 00514 <span class="preprocessor"></span><span class="preprocessor">#define realloc(ptr,size) myrealloc(ptr,size)</span> 00515 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">void</span> *myrealloc(<span class="keywordtype">void</span> *, size_t); 00516 <span class="preprocessor">#endif</span> 00517 <span class="preprocessor"></span> 00518 <span class="preprocessor">#if ! HAVE_SETENV</span> 00519 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="system_8h.html#a42">setenv</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name, <span class="keyword">const</span> <span class="keywordtype">char</span> *value, <span class="keywordtype">int</span> replace); 00520 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="system_8h.html#a43">unsetenv</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name); 00521 <span class="preprocessor">#endif</span> 00522 <span class="preprocessor"></span> 00523 <span class="preprocessor">#if HAVE_SYS_SOCKET_H</span> 00524 <span class="preprocessor"></span><span class="preprocessor">#include <sys/types.h></span> 00525 <span class="preprocessor">#include <sys/socket.h></span> 00526 <span class="preprocessor">#endif</span> 00527 <span class="preprocessor"></span> 00528 <span class="preprocessor">#if HAVE_SYS_SELECT_H && !defined(__LCLINT__)</span> 00529 <span class="preprocessor"></span><span class="preprocessor">#include <sys/select.h></span> 00530 <span class="preprocessor">#endif</span> 00531 <span class="preprocessor"></span> 00532 <span class="comment">/* Solaris <= 2.6 limits getpass return to only 8 chars */</span> 00533 <span class="preprocessor">#if HAVE_GETPASSPHRASE</span> 00534 <span class="preprocessor"></span><span class="preprocessor">#define getpass getpassphrase</span> 00535 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00536 <span class="preprocessor"></span> 00537 <span class="preprocessor">#if ! HAVE_LCHOWN</span> <a name="l00538"></a><a class="code" href="system_8h.html#a24">00538</a> <span class="preprocessor"></span><span class="preprocessor">#define lchown chown</span> 00539 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00540 <span class="preprocessor"></span> 00541 <span class="preprocessor">#if HAVE_GETMNTINFO_R || HAVE_MNTCTL</span> 00542 <span class="preprocessor"></span><span class="preprocessor"># define GETMNTENT_ONE 0</span> 00543 <span class="preprocessor"></span><span class="preprocessor"># define GETMNTENT_TWO 0</span> 00544 <span class="preprocessor"></span><span class="preprocessor"># if HAVE_SYS_MNTCTL_H</span> 00545 <span class="preprocessor"></span><span class="preprocessor"># include <sys/mntctl.h></span> 00546 <span class="preprocessor"># endif</span> 00547 <span class="preprocessor"></span><span class="preprocessor"># if HAVE_SYS_VMOUNT_H</span> 00548 <span class="preprocessor"></span><span class="preprocessor"># include <sys/vmount.h></span> 00549 <span class="preprocessor"># endif</span> 00550 <span class="preprocessor"></span><span class="preprocessor"># if HAVE_SYS_MOUNT_H</span> 00551 <span class="preprocessor"></span><span class="preprocessor"># include <sys/mount.h></span> 00552 <span class="preprocessor"># endif</span> 00553 <span class="preprocessor"></span><span class="preprocessor">#elif HAVE_MNTENT_H || !(HAVE_GETMNTENT) || HAVE_STRUCT_MNTTAB</span> 00554 <span class="preprocessor"></span><span class="preprocessor"># if HAVE_MNTENT_H</span> 00555 <span class="preprocessor"></span><span class="preprocessor"># include <stdio.h></span> 00556 <span class="preprocessor"># include <mntent.h></span> 00557 <span class="preprocessor"># define our_mntent struct mntent</span> 00558 <span class="preprocessor"></span><span class="preprocessor"># define our_mntdir mnt_dir</span> 00559 <span class="preprocessor"></span><span class="preprocessor"># elif HAVE_STRUCT_MNTTAB</span> 00560 <span class="preprocessor"></span><span class="preprocessor"># include <stdio.h></span> 00561 <span class="preprocessor"># include <mnttab.h></span> 00562 <span class="keyword">struct </span><a class="code" href="structour__mntent.html">our_mntent</a> { 00563 <span class="keywordtype">char</span> * <a class="code" href="structour__mntent.html#m0">our_mntdir</a>; 00564 }; 00565 <span class="keyword">struct </span><a class="code" href="structour__mntent.html">our_mntent</a> *getmntent(FILE *filep); 00566 <span class="preprocessor"># define our_mntent struct our_mntent</span> 00567 <span class="preprocessor"></span><span class="preprocessor"># else</span> 00568 <span class="preprocessor"></span><span class="preprocessor"># include <stdio.h></span> <a name="l00569"></a><a class="code" href="structour__mntent.html">00569</a> <span class="keyword">struct </span><a class="code" href="structour__mntent.html">our_mntent</a> { <a name="l00570"></a><a class="code" href="structour__mntent.html#m0">00570</a> <span class="keywordtype">char</span> * <a class="code" href="structour__mntent.html#m0">our_mntdir</a>; 00571 }; 00572 <span class="keyword">struct </span><a class="code" href="structour__mntent.html">our_mntent</a> *getmntent(FILE *filep); <a name="l00573"></a><a class="code" href="system_8h.html#a25">00573</a> <span class="preprocessor"># define our_mntent struct our_mntent</span> 00574 <span class="preprocessor"></span><span class="preprocessor"># endif</span> <a name="l00575"></a><a class="code" href="system_8h.html#a26">00575</a> <span class="preprocessor"></span><span class="preprocessor"># define GETMNTENT_ONE 1</span> <a name="l00576"></a><a class="code" href="system_8h.html#a27">00576</a> <span class="preprocessor"></span><span class="preprocessor"># define GETMNTENT_TWO 0</span> 00577 <span class="preprocessor"></span><span class="preprocessor">#elif HAVE_SYS_MNTTAB_H</span> 00578 <span class="preprocessor"></span><span class="preprocessor"># include <stdio.h></span> 00579 <span class="preprocessor"># include <sys/mnttab.h></span> 00580 <span class="preprocessor"># define GETMNTENT_ONE 0</span> 00581 <span class="preprocessor"></span><span class="preprocessor"># define GETMNTENT_TWO 1</span> 00582 <span class="preprocessor"></span><span class="preprocessor"># define our_mntent struct mnttab</span> 00583 <span class="preprocessor"></span><span class="preprocessor"># define our_mntdir mnt_mountp</span> 00584 <span class="preprocessor"></span><span class="preprocessor">#else </span><span class="comment">/* if !HAVE_MNTCTL */</span> 00585 <span class="preprocessor"># error Neither mntent.h, mnttab.h, or mntctl() exists. I cannot build on this system.</span> 00586 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00587 <span class="preprocessor"></span> 00588 <span class="preprocessor">#ifndef MOUNTED</span> <a name="l00589"></a><a class="code" href="system_8h.html#a28">00589</a> <span class="preprocessor"></span><span class="preprocessor">#define MOUNTED "/etc/mnttab"</span> 00590 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 00591 <span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* H_SYSTEM */</span> </pre></div><hr><address style="align: right;"><small>Generated on Thu Sep 12 22:15:02 2002 for rpm by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.17 </small></address> </body> </html>