ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/cvsroot/libspf/docs/API/doxygen/html/util_8c.html
Revision: 1.1
Committed: Tue Nov 13 00:51:30 2007 UTC (18 years, 10 months ago) by root
Content type: text/html
Branch: MAIN
CVS Tags: HEAD
Log Message:
initial import of libspf-1.0.0-p5 from freebsd ports

File Contents

# User Rev Content
1 root 1.1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2     <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3     <title>libSPF v1.0: util.c File Reference</title>
4     <link href="doxygen.css" rel="stylesheet" type="text/css">
5     </head><body>
6     <!-- Generated by Doxygen 1.3.8 -->
7     <div class="qindex"> <form class="search" action="search.php" method="get">
8     <a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <span class="search"><u>S</u>earch&nbsp;for&nbsp;<input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div>
9     <h1>util.c File Reference</h1><code>#include "<a class="el" href="util_8h-source.html">util.h</a>"</code><br>
10     <code>#include "<a class="el" href="dns_8h-source.html">dns.h</a>"</code><br>
11    
12     <p>
13     Include dependency graph for util.c:<p><center><img src="util_8c__incl.png" border="0" usemap="#util.c_map" alt="Include dependency graph"></center>
14     <map name="util.c_map">
15     <area href="util_8h.html" shape="rect" coords="7,17,44,36" alt="">
16     <area href="dns_8h.html" shape="rect" coords="68,17,111,36" alt="">
17     </map>
18    
19     <p>
20     <a href="util_8c-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
21     <tr><td></td></tr>
22     <tr><td colspan=2><br><h2>Functions</h2></td></tr>
23     <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a2">_pprintf_dbg</a> (u_int8_t level, const char *func, const char *file, const size_t line, const char *s)</td></tr>
24    
25     <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a3">_printf_dbg</a> (u_int8_t level, const char *func, const char *file, const size_t line, const char *format,...)</td></tr>
26    
27     <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a4">_dummy_debug</a> (const u_int8_t level, const char *func, const char *file, const size_t line, const char *format,...)</td></tr>
28    
29     <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a5">_dummy_pdebug</a> (const u_int8_t level, const char *func, const char *file, const size_t line, const char *s)</td></tr>
30    
31     <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a6">UTIL_get_date</a> (void)</td></tr>
32    
33     <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a7">UTIL_log_result</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *p)</td></tr>
34    
35     <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a8">UTIL_strndup</a> (const char *s, const size_t n)</td></tr>
36    
37     <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a9">UTIL_strdup</a> (const char *s)</td></tr>
38    
39     <tr><td class="memItemLeft" nowrap align=right valign=top>void *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a10">UTIL_malloc</a> (const int32_t n, const char *file, int32_t line, const char *func)</td></tr>
40    
41     <tr><td class="memItemLeft" nowrap align=right valign=top>void *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a11">UTIL_realloc</a> (void *p, const int32_t n, const char *file, const int32_t line, const char *func)</td></tr>
42    
43     <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a12">UTIL_free</a> (void *p, const char *file, const int32_t line, const char *func)</td></tr>
44    
45     <tr><td class="memItemLeft" nowrap align=right valign=top>int16_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a13">UTIL_index</a> (const char *s, const char c)</td></tr>
46    
47     <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a14">UTIL_split_str</a> (const char *s, const char c, const u_int8_t num)</td></tr>
48    
49     <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a15">UTIL_split_strr</a> (const char *s, const char c, const u_int8_t num)</td></tr>
50    
51     <tr><td class="memItemLeft" nowrap align=right valign=top>u_int8_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a16">UTIL_count_delim</a> (const char *s, const char c)</td></tr>
52    
53     <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="spf_8h.html#a35">SPF_BOOL</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a17">UTIL_is_spf_delim</a> (const char c)</td></tr>
54    
55     <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="spf_8h.html#a35">SPF_BOOL</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a18">UTIL_is_spf_result</a> (const char c)</td></tr>
56    
57     <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="spf_8h.html#a35">SPF_BOOL</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a19">UTIL_is_macro</a> (const char *s)</td></tr>
58    
59     <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="spf_8h.html#a35">SPF_BOOL</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a20">UTIL_mx_cmp</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *p, const char *s, const int8_t cidr)</td></tr>
60    
61     <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="spf_8h.html#a35">SPF_BOOL</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a21">UTIL_a_cmp</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *p, const char *s, const int8_t cidr)</td></tr>
62    
63     <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="spf_8h.html#a35">SPF_BOOL</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a22">UTIL_ptr_cmp</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *p, const char *s)</td></tr>
64    
65     <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="spf_8h.html#a38">SPF_MECHANISM</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a23">UTIL_get_policy_mech</a> (const char *s)</td></tr>
66    
67     <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="spf_8h.html#a35">SPF_BOOL</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a24">UTIL_assoc_prefix</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *p, <a class="el" href="spf_8h.html#a36">SPF_RESULT</a> res, const char *s)</td></tr>
68    
69     <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="spf_8h.html#a36">SPF_RESULT</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a25">UTIL_get_mech_prefix</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *p, const char *s)</td></tr>
70    
71     <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="structpolicy__addr__s.html">policy_addr_t</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a26">UTIL_expand_ip</a> (const char *s)</td></tr>
72    
73     <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="spf_8h.html#a35">SPF_BOOL</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a27">UTIL_is_ip</a> (const char *id)</td></tr>
74    
75     <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a28">UTIL_rev_addr</a> (const char *s)</td></tr>
76    
77     <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a29">UTIL_get_dname</a> (const char *s)</td></tr>
78    
79     <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="spf_8h.html#a35">SPF_BOOL</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a30">UTIL_cidr_cmp</a> (const <a class="el" href="structpolicy__addr__s.html">policy_addr_t</a> *policy_addr, const struct in_addr *peer_addr)</td></tr>
80    
81     <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="spf_8h.html#a35">SPF_BOOL</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a31">UTIL_validate_ptr</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *p)</td></tr>
82    
83     <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="spf_8h.html#a35">SPF_BOOL</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a32">UTIL_validate_hostname</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *p, const char *s, const int8_t cidr)</td></tr>
84    
85     <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a33">UTIL_url_encode</a> (const char *s)</td></tr>
86    
87     <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a34">UTIL_reverse</a> (const char *s, const char delim)</td></tr>
88    
89     <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="spf_8h.html#a35">SPF_BOOL</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a35">UTIL_addnode</a> (<a class="el" href="structsplit__str__s.html">split_str_t</a> *master, const char *s, <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> last)</td></tr>
90    
91     <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a36">_UTIL_pthread_mutex</a> (void *mutex, <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> action)</td></tr>
92    
93     <tr><td colspan=2><br><h2>Variables</h2></td></tr>
94     <tr><td class="memItemLeft" nowrap align=right valign=top>void *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a0">util_mutex</a></td></tr>
95    
96     <tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8c.html#a1">errno</a></td></tr>
97    
98     </table>
99     <hr><h2>Function Documentation</h2>
100     <a class="anchor" name="a4" doxytag="util.c::_dummy_debug" ></a><p>
101     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
102     <tr>
103     <td class="mdRow">
104     <table cellpadding="0" cellspacing="0" border="0">
105     <tr>
106     <td class="md" nowrap valign="top"> void _dummy_debug </td>
107     <td class="md" valign="top">(&nbsp;</td>
108     <td class="md" nowrap valign="top">const u_int8_t&nbsp;</td>
109     <td class="mdname" nowrap> <em>level</em>, </td>
110     </tr>
111     <tr>
112     <td class="md" nowrap align="right"></td>
113     <td></td>
114     <td class="md" nowrap>const char *&nbsp;</td>
115     <td class="mdname" nowrap> <em>func</em>, </td>
116     </tr>
117     <tr>
118     <td class="md" nowrap align="right"></td>
119     <td></td>
120     <td class="md" nowrap>const char *&nbsp;</td>
121     <td class="mdname" nowrap> <em>file</em>, </td>
122     </tr>
123     <tr>
124     <td class="md" nowrap align="right"></td>
125     <td></td>
126     <td class="md" nowrap>const size_t&nbsp;</td>
127     <td class="mdname" nowrap> <em>line</em>, </td>
128     </tr>
129     <tr>
130     <td class="md" nowrap align="right"></td>
131     <td></td>
132     <td class="md" nowrap>const char *&nbsp;</td>
133     <td class="mdname" nowrap> <em>format</em>, </td>
134     </tr>
135     <tr>
136     <td class="md" nowrap align="right"></td>
137     <td></td>
138     <td class="md" nowrap>&nbsp;</td>
139     <td class="mdname" nowrap> <em>...</em></td>
140     </tr>
141     <tr>
142     <td></td>
143     <td class="md">)&nbsp;</td>
144     <td class="md" colspan="2"></td>
145     </tr>
146     </table>
147     </td>
148     </tr>
149     </table>
150     <table cellspacing=5 cellpadding=0 border=0>
151     <tr>
152     <td>
153     &nbsp;
154     </td>
155     <td>
156    
157     <p>
158     Definition at line <a class="el" href="util_8c-source.html#l00237">237</a> of file <a class="el" href="util_8c-source.html">util.c</a>. </td>
159     </tr>
160     </table>
161     <a class="anchor" name="a5" doxytag="util.c::_dummy_pdebug" ></a><p>
162     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
163     <tr>
164     <td class="mdRow">
165     <table cellpadding="0" cellspacing="0" border="0">
166     <tr>
167     <td class="md" nowrap valign="top"> void _dummy_pdebug </td>
168     <td class="md" valign="top">(&nbsp;</td>
169     <td class="md" nowrap valign="top">const u_int8_t&nbsp;</td>
170     <td class="mdname" nowrap> <em>level</em>, </td>
171     </tr>
172     <tr>
173     <td class="md" nowrap align="right"></td>
174     <td></td>
175     <td class="md" nowrap>const char *&nbsp;</td>
176     <td class="mdname" nowrap> <em>func</em>, </td>
177     </tr>
178     <tr>
179     <td class="md" nowrap align="right"></td>
180     <td></td>
181     <td class="md" nowrap>const char *&nbsp;</td>
182     <td class="mdname" nowrap> <em>file</em>, </td>
183     </tr>
184     <tr>
185     <td class="md" nowrap align="right"></td>
186     <td></td>
187     <td class="md" nowrap>const size_t&nbsp;</td>
188     <td class="mdname" nowrap> <em>line</em>, </td>
189     </tr>
190     <tr>
191     <td class="md" nowrap align="right"></td>
192     <td></td>
193     <td class="md" nowrap>const char *&nbsp;</td>
194     <td class="mdname" nowrap> <em>s</em></td>
195     </tr>
196     <tr>
197     <td></td>
198     <td class="md">)&nbsp;</td>
199     <td class="md" colspan="2"></td>
200     </tr>
201     </table>
202     </td>
203     </tr>
204     </table>
205     <table cellspacing=5 cellpadding=0 border=0>
206     <tr>
207     <td>
208     &nbsp;
209     </td>
210     <td>
211    
212     <p>
213     Definition at line <a class="el" href="util_8c-source.html#l00255">255</a> of file <a class="el" href="util_8c-source.html">util.c</a>. </td>
214     </tr>
215     </table>
216     <a class="anchor" name="a2" doxytag="util.c::_pprintf_dbg" ></a><p>
217     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
218     <tr>
219     <td class="mdRow">
220     <table cellpadding="0" cellspacing="0" border="0">
221     <tr>
222     <td class="md" nowrap valign="top"> void _pprintf_dbg </td>
223     <td class="md" valign="top">(&nbsp;</td>
224     <td class="md" nowrap valign="top">u_int8_t&nbsp;</td>
225     <td class="mdname" nowrap> <em>level</em>, </td>
226     </tr>
227     <tr>
228     <td class="md" nowrap align="right"></td>
229     <td></td>
230     <td class="md" nowrap>const char *&nbsp;</td>
231     <td class="mdname" nowrap> <em>func</em>, </td>
232     </tr>
233     <tr>
234     <td class="md" nowrap align="right"></td>
235     <td></td>
236     <td class="md" nowrap>const char *&nbsp;</td>
237     <td class="mdname" nowrap> <em>file</em>, </td>
238     </tr>
239     <tr>
240     <td class="md" nowrap align="right"></td>
241     <td></td>
242     <td class="md" nowrap>const size_t&nbsp;</td>
243     <td class="mdname" nowrap> <em>line</em>, </td>
244     </tr>
245     <tr>
246     <td class="md" nowrap align="right"></td>
247     <td></td>
248     <td class="md" nowrap>const char *&nbsp;</td>
249     <td class="mdname" nowrap> <em>s</em></td>
250     </tr>
251     <tr>
252     <td></td>
253     <td class="md">)&nbsp;</td>
254     <td class="md" colspan="2"></td>
255     </tr>
256     </table>
257     </td>
258     </tr>
259     </table>
260     <table cellspacing=5 cellpadding=0 border=0>
261     <tr>
262     <td>
263     &nbsp;
264     </td>
265     <td>
266    
267     <p>
268     Definition at line <a class="el" href="util_8c-source.html#l00097">97</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
269     <p>
270     References <a class="el" href="main_8c-source.html#l00057">confg</a>, <a class="el" href="util_8h-source.html#l00168">f_bit_set</a>, <a class="el" href="main_8h-source.html#l00073">FL_D</a>, <a class="el" href="main_8h-source.html#l00075">FL_F</a>, <a class="el" href="spf_8h-source.html#l00244">spf_config_s::level</a>, <a class="el" href="spf_8h-source.html#l00070">SPF_MAX_DEBUG</a>, <a class="el" href="util_8h-source.html#l00127">xfree</a>, and <a class="el" href="util_8h-source.html#l00125">xmalloc</a>. </td>
271     </tr>
272     </table>
273     <a class="anchor" name="a3" doxytag="util.c::_printf_dbg" ></a><p>
274     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
275     <tr>
276     <td class="mdRow">
277     <table cellpadding="0" cellspacing="0" border="0">
278     <tr>
279     <td class="md" nowrap valign="top"> void _printf_dbg </td>
280     <td class="md" valign="top">(&nbsp;</td>
281     <td class="md" nowrap valign="top">u_int8_t&nbsp;</td>
282     <td class="mdname" nowrap> <em>level</em>, </td>
283     </tr>
284     <tr>
285     <td class="md" nowrap align="right"></td>
286     <td></td>
287     <td class="md" nowrap>const char *&nbsp;</td>
288     <td class="mdname" nowrap> <em>func</em>, </td>
289     </tr>
290     <tr>
291     <td class="md" nowrap align="right"></td>
292     <td></td>
293     <td class="md" nowrap>const char *&nbsp;</td>
294     <td class="mdname" nowrap> <em>file</em>, </td>
295     </tr>
296     <tr>
297     <td class="md" nowrap align="right"></td>
298     <td></td>
299     <td class="md" nowrap>const size_t&nbsp;</td>
300     <td class="mdname" nowrap> <em>line</em>, </td>
301     </tr>
302     <tr>
303     <td class="md" nowrap align="right"></td>
304     <td></td>
305     <td class="md" nowrap>const char *&nbsp;</td>
306     <td class="mdname" nowrap> <em>format</em>, </td>
307     </tr>
308     <tr>
309     <td class="md" nowrap align="right"></td>
310     <td></td>
311     <td class="md" nowrap>&nbsp;</td>
312     <td class="mdname" nowrap> <em>...</em></td>
313     </tr>
314     <tr>
315     <td></td>
316     <td class="md">)&nbsp;</td>
317     <td class="md" colspan="2"></td>
318     </tr>
319     </table>
320     </td>
321     </tr>
322     </table>
323     <table cellspacing=5 cellpadding=0 border=0>
324     <tr>
325     <td>
326     &nbsp;
327     </td>
328     <td>
329    
330     <p>
331     Definition at line <a class="el" href="util_8c-source.html#l00154">154</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
332     <p>
333     References <a class="el" href="main_8c-source.html#l00057">confg</a>, <a class="el" href="util_8h-source.html#l00210">DEBUG_LOG_FILE</a>, <a class="el" href="util_8h-source.html#l00168">f_bit_set</a>, <a class="el" href="main_8h-source.html#l00074">FL_E</a>, <a class="el" href="spf_8h-source.html#l00244">spf_config_s::level</a>, <a class="el" href="spf_8h-source.html#l00070">SPF_MAX_DEBUG</a>, <a class="el" href="util_8c-source.html#l00066">util_mutex</a>, <a class="el" href="util_8h-source.html#l00125">xmalloc</a>, <a class="el" href="util_8h-source.html#l00163">xpthread_mutex_lock</a>, and <a class="el" href="util_8h-source.html#l00164">xpthread_mutex_unlock</a>. </td>
334     </tr>
335     </table>
336     <a class="anchor" name="a36" doxytag="util.c::_UTIL_pthread_mutex" ></a><p>
337     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
338     <tr>
339     <td class="mdRow">
340     <table cellpadding="0" cellspacing="0" border="0">
341     <tr>
342     <td class="md" nowrap valign="top"> void _UTIL_pthread_mutex </td>
343     <td class="md" valign="top">(&nbsp;</td>
344     <td class="md" nowrap valign="top">void *&nbsp;</td>
345     <td class="mdname" nowrap> <em>mutex</em>, </td>
346     </tr>
347     <tr>
348     <td class="md" nowrap align="right"></td>
349     <td></td>
350     <td class="md" nowrap><a class="el" href="spf_8h.html#a35">SPF_BOOL</a>&nbsp;</td>
351     <td class="mdname" nowrap> <em>action</em></td>
352     </tr>
353     <tr>
354     <td></td>
355     <td class="md">)&nbsp;</td>
356     <td class="md" colspan="2"></td>
357     </tr>
358     </table>
359     </td>
360     </tr>
361     </table>
362     <table cellspacing=5 cellpadding=0 border=0>
363     <tr>
364     <td>
365     &nbsp;
366     </td>
367     <td>
368    
369     <p>
370     Definition at line <a class="el" href="util_8c-source.html#l02512">2512</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
371     <p>
372     References <a class="el" href="spf_8h.html#a35">SPF_BOOL</a>, <a class="el" href="spf_8h.html#a87a49">SPF_FALSE</a>, and <a class="el" href="spf_8h.html#a87a50">SPF_TRUE</a>. </td>
373     </tr>
374     </table>
375     <a class="anchor" name="a21" doxytag="util.c::UTIL_a_cmp" ></a><p>
376     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
377     <tr>
378     <td class="mdRow">
379     <table cellpadding="0" cellspacing="0" border="0">
380     <tr>
381     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_a_cmp </td>
382     <td class="md" valign="top">(&nbsp;</td>
383     <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
384     <td class="mdname" nowrap> <em>p</em>, </td>
385     </tr>
386     <tr>
387     <td class="md" nowrap align="right"></td>
388     <td></td>
389     <td class="md" nowrap>const char *&nbsp;</td>
390     <td class="mdname" nowrap> <em>s</em>, </td>
391     </tr>
392     <tr>
393     <td class="md" nowrap align="right"></td>
394     <td></td>
395     <td class="md" nowrap>const int8_t&nbsp;</td>
396     <td class="mdname" nowrap> <em>cidr</em></td>
397     </tr>
398     <tr>
399     <td></td>
400     <td class="md">)&nbsp;</td>
401     <td class="md" colspan="2"></td>
402     </tr>
403     </table>
404     </td>
405     </tr>
406     </table>
407     <table cellspacing=5 cellpadding=0 border=0>
408     <tr>
409     <td>
410     &nbsp;
411     </td>
412     <td>
413    
414     <p>
415     Definition at line <a class="el" href="util_8c-source.html#l00980">980</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
416     <p>
417     References <a class="el" href="spf_8h-source.html#l00363">peer_info_s::addr</a>, <a class="el" href="spf_8h-source.html#l00349">peer_info_s::current_domain</a>, <a class="el" href="spf_8h.html#a46">peer_info_t</a>, <a class="el" href="spf_8h.html#a40">policy_addr_t</a>, <a class="el" href="util_8h-source.html#l00108">SIZEOF</a>, <a class="el" href="spf_8h.html#a35">SPF_BOOL</a>, <a class="el" href="spf_8h.html#a87a49">SPF_FALSE</a>, <a class="el" href="util_8h-source.html#l00098">SPF_MAX_GHBNR_DBUF</a>, <a class="el" href="spf_8h-source.html#l00083">SPF_MAX_HNAME</a>, <a class="el" href="spf_8h.html#a88a51">SPF_PASS</a>, <a class="el" href="spf_8h.html#a87a50">SPF_TRUE</a>, <a class="el" href="util_8c-source.html#l01309">UTIL_assoc_prefix()</a>, <a class="el" href="util_8c-source.html#l01961">UTIL_cidr_cmp()</a>, <a class="el" href="util_8c-source.html#l00564">UTIL_index()</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00150">xeprintf</a>, <a class="el" href="util_8h-source.html#l00127">xfree</a>, <a class="el" href="dns_8h-source.html#l00121">xgethostbyname</a>, <a class="el" href="dns_8h-source.html#l00122">xgethostbyname_free</a>, <a class="el" href="util_8h-source.html#l00125">xmalloc</a>, <a class="el" href="util_8h-source.html#l00129">xstrndup</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
418     <p>
419     Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>.
420     <p>
421     Here is the call graph for this function:<p><center><img src="util_8c_a21_cgraph.png" border="0" usemap="#util_8c_a21_cgraph_map" alt=""></center>
422     <map name="util_8c_a21_cgraph_map">
423     <area href="util_8h.html#a47" shape="rect" coords="155,5,275,24" alt="">
424     <area href="util_8h.html#a35" shape="rect" coords="324,29,404,48" alt="">
425     <area href="util_8h.html#a52" shape="rect" coords="164,99,265,117" alt="">
426     </map>
427     </td>
428     </tr>
429     </table>
430     <a class="anchor" name="a35" doxytag="util.c::UTIL_addnode" ></a><p>
431     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
432     <tr>
433     <td class="mdRow">
434     <table cellpadding="0" cellspacing="0" border="0">
435     <tr>
436     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_addnode </td>
437     <td class="md" valign="top">(&nbsp;</td>
438     <td class="md" nowrap valign="top"><a class="el" href="structsplit__str__s.html">split_str_t</a> *&nbsp;</td>
439     <td class="mdname" nowrap> <em>master</em>, </td>
440     </tr>
441     <tr>
442     <td class="md" nowrap align="right"></td>
443     <td></td>
444     <td class="md" nowrap>const char *&nbsp;</td>
445     <td class="mdname" nowrap> <em>s</em>, </td>
446     </tr>
447     <tr>
448     <td class="md" nowrap align="right"></td>
449     <td></td>
450     <td class="md" nowrap><a class="el" href="spf_8h.html#a35">SPF_BOOL</a>&nbsp;</td>
451     <td class="mdname" nowrap> <em>last</em></td>
452     </tr>
453     <tr>
454     <td></td>
455     <td class="md">)&nbsp;</td>
456     <td class="md" colspan="2"></td>
457     </tr>
458     </table>
459     </td>
460     </tr>
461     </table>
462     <table cellspacing=5 cellpadding=0 border=0>
463     <tr>
464     <td>
465     &nbsp;
466     </td>
467     <td>
468    
469     <p>
470     Definition at line <a class="el" href="util_8c-source.html#l02421">2421</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
471     <p>
472     References <a class="el" href="spf_8h-source.html#l00299">split_str_s::elements</a>, <a class="el" href="spf_8h-source.html#l00297">split_str_s::head</a>, <a class="el" href="spf_8h-source.html#l00283">split_str_node_s::len</a>, <a class="el" href="spf_8h-source.html#l00285">split_str_node_s::next</a>, <a class="el" href="spf_8h-source.html#l00284">split_str_node_s::s</a>, <a class="el" href="util_8h-source.html#l00108">SIZEOF</a>, <a class="el" href="spf_8h.html#a35">SPF_BOOL</a>, <a class="el" href="spf_8h.html#a87a49">SPF_FALSE</a>, <a class="el" href="spf_8h.html#a87a50">SPF_TRUE</a>, <a class="el" href="spf_8h.html#a44">split_str_node_t</a>, <a class="el" href="spf_8h.html#a45">split_str_t</a>, <a class="el" href="spf_8h-source.html#l00298">split_str_s::tail</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00125">xmalloc</a>, <a class="el" href="util_8h-source.html#l00146">xpprintf</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
473     <p>
474     Referenced by <a class="el" href="util_8c-source.html#l02331">UTIL_reverse()</a>. </td>
475     </tr>
476     </table>
477     <a class="anchor" name="a24" doxytag="util.c::UTIL_assoc_prefix" ></a><p>
478     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
479     <tr>
480     <td class="mdRow">
481     <table cellpadding="0" cellspacing="0" border="0">
482     <tr>
483     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_assoc_prefix </td>
484     <td class="md" valign="top">(&nbsp;</td>
485     <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
486     <td class="mdname" nowrap> <em>p</em>, </td>
487     </tr>
488     <tr>
489     <td class="md" nowrap align="right"></td>
490     <td></td>
491     <td class="md" nowrap><a class="el" href="spf_8h.html#a36">SPF_RESULT</a>&nbsp;</td>
492     <td class="mdname" nowrap> <em>res</em>, </td>
493     </tr>
494     <tr>
495     <td class="md" nowrap align="right"></td>
496     <td></td>
497     <td class="md" nowrap>const char *&nbsp;</td>
498     <td class="mdname" nowrap> <em>s</em></td>
499     </tr>
500     <tr>
501     <td></td>
502     <td class="md">)&nbsp;</td>
503     <td class="md" colspan="2"></td>
504     </tr>
505     </table>
506     </td>
507     </tr>
508     </table>
509     <table cellspacing=5 cellpadding=0 border=0>
510     <tr>
511     <td>
512     &nbsp;
513     </td>
514     <td>
515    
516     <p>
517     Definition at line <a class="el" href="util_8c-source.html#l01309">1309</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
518     <p>
519     References <a class="el" href="spf_8h-source.html#l00359">peer_info_s::error</a>, <a class="el" href="spf_8h-source.html#l00358">peer_info_s::last_m</a>, <a class="el" href="spf_8h.html#a46">peer_info_t</a>, <a class="el" href="spf_8h-source.html#l00332">peer_info_s::RES</a>, <a class="el" href="spf_8h-source.html#l00341">peer_info_s::rs</a>, <a class="el" href="spf_8h-source.html#l00214">spf_result_t::s</a>, <a class="el" href="spf_8h.html#a35">SPF_BOOL</a>, <a class="el" href="spf_8h.html#a88a55">SPF_ERROR</a>, <a class="el" href="spf_8h.html#a87a49">SPF_FALSE</a>, <a class="el" href="spf_8h.html#a88a54">SPF_H_FAIL</a>, <a class="el" href="spf_8h-source.html#l00085">SPF_MAX_ERROR</a>, <a class="el" href="spf_8h.html#a88a56">SPF_NEUTRAL</a>, <a class="el" href="spf_8h.html#a88a52">SPF_NONE</a>, <a class="el" href="spf_8h.html#a88a51">SPF_PASS</a>, <a class="el" href="spf_8h.html#a36">SPF_RESULT</a>, <a class="el" href="spf_8h-source.html#l00361">peer_info_s::spf_result</a>, <a class="el" href="spf_8h.html#a88a53">SPF_S_FAIL</a>, <a class="el" href="spf_8h.html#a87a50">SPF_TRUE</a>, <a class="el" href="spf_8h.html#a88a57">SPF_UNKNOWN</a>, <a class="el" href="spf_8h.html#a88a58">SPF_UNMECH</a>, <a class="el" href="util_8c-source.html#l00564">UTIL_index()</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
520     <p>
521     Referenced by <a class="el" href="dns_8c-source.html#l00217">DNS_query()</a>, <a class="el" href="main_8c-source.html#l00081">SPF_init()</a>, <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>, <a class="el" href="main_8c-source.html#l00399">SPF_policy_main()</a>, <a class="el" href="main_8c-source.html#l00570">SPF_policy_main_rec()</a>, <a class="el" href="util_8c-source.html#l00980">UTIL_a_cmp()</a>, <a class="el" href="util_8c-source.html#l00914">UTIL_mx_cmp()</a>, and <a class="el" href="util_8c-source.html#l02100">UTIL_validate_hostname()</a>.
522     <p>
523     Here is the call graph for this function:<p><center><img src="util_8c_a24_cgraph.png" border="0" usemap="#util_8c_a24_cgraph_map" alt=""></center>
524     <map name="util_8c_a24_cgraph_map">
525     <area href="util_8h.html#a35" shape="rect" coords="188,5,268,23" alt="">
526     </map>
527     </td>
528     </tr>
529     </table>
530     <a class="anchor" name="a30" doxytag="util.c::UTIL_cidr_cmp" ></a><p>
531     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
532     <tr>
533     <td class="mdRow">
534     <table cellpadding="0" cellspacing="0" border="0">
535     <tr>
536     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_cidr_cmp </td>
537     <td class="md" valign="top">(&nbsp;</td>
538     <td class="md" nowrap valign="top">const <a class="el" href="structpolicy__addr__s.html">policy_addr_t</a> *&nbsp;</td>
539     <td class="mdname" nowrap> <em>policy_addr</em>, </td>
540     </tr>
541     <tr>
542     <td class="md" nowrap align="right"></td>
543     <td></td>
544     <td class="md" nowrap>const struct in_addr *&nbsp;</td>
545     <td class="mdname" nowrap> <em>peer_addr</em></td>
546     </tr>
547     <tr>
548     <td></td>
549     <td class="md">)&nbsp;</td>
550     <td class="md" colspan="2"></td>
551     </tr>
552     </table>
553     </td>
554     </tr>
555     </table>
556     <table cellspacing=5 cellpadding=0 border=0>
557     <tr>
558     <td>
559     &nbsp;
560     </td>
561     <td>
562    
563     <p>
564     Definition at line <a class="el" href="util_8c-source.html#l01961">1961</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
565     <p>
566     References <a class="el" href="spf_8h-source.html#l00233">policy_addr_s::addr</a>, <a class="el" href="spf_8h-source.html#l00232">policy_addr_s::cidr</a>, <a class="el" href="spf_8h.html#a40">policy_addr_t</a>, <a class="el" href="spf_8h.html#a35">SPF_BOOL</a>, <a class="el" href="spf_8h.html#a87a49">SPF_FALSE</a>, <a class="el" href="spf_8h-source.html#l00079">SPF_MAX_IP_ADDR</a>, <a class="el" href="spf_8h.html#a87a50">SPF_TRUE</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00127">xfree</a>, <a class="el" href="util_8h-source.html#l00129">xstrndup</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
567     <p>
568     Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>, <a class="el" href="util_8c-source.html#l00980">UTIL_a_cmp()</a>, and <a class="el" href="util_8c-source.html#l02100">UTIL_validate_hostname()</a>. </td>
569     </tr>
570     </table>
571     <a class="anchor" name="a16" doxytag="util.c::UTIL_count_delim" ></a><p>
572     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
573     <tr>
574     <td class="mdRow">
575     <table cellpadding="0" cellspacing="0" border="0">
576     <tr>
577     <td class="md" nowrap valign="top"> u_int8_t UTIL_count_delim </td>
578     <td class="md" valign="top">(&nbsp;</td>
579     <td class="md" nowrap valign="top">const char *&nbsp;</td>
580     <td class="mdname" nowrap> <em>s</em>, </td>
581     </tr>
582     <tr>
583     <td class="md" nowrap align="right"></td>
584     <td></td>
585     <td class="md" nowrap>const char&nbsp;</td>
586     <td class="mdname" nowrap> <em>c</em></td>
587     </tr>
588     <tr>
589     <td></td>
590     <td class="md">)&nbsp;</td>
591     <td class="md" colspan="2"></td>
592     </tr>
593     </table>
594     </td>
595     </tr>
596     </table>
597     <table cellspacing=5 cellpadding=0 border=0>
598     <tr>
599     <td>
600     &nbsp;
601     </td>
602     <td>
603    
604     <p>
605     Definition at line <a class="el" href="util_8c-source.html#l00751">751</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
606     <p>
607     References <a class="el" href="spf_8h-source.html#l00073">SPF_MAX_DELIM</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
608     <p>
609     Referenced by <a class="el" href="macro_8c-source.html#l00505">MACRO_eatmore()</a>, and <a class="el" href="util_8c-source.html#l01906">UTIL_get_dname()</a>. </td>
610     </tr>
611     </table>
612     <a class="anchor" name="a26" doxytag="util.c::UTIL_expand_ip" ></a><p>
613     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
614     <tr>
615     <td class="mdRow">
616     <table cellpadding="0" cellspacing="0" border="0">
617     <tr>
618     <td class="md" nowrap valign="top"> <a class="el" href="structpolicy__addr__s.html">policy_addr_t</a>* UTIL_expand_ip </td>
619     <td class="md" valign="top">(&nbsp;</td>
620     <td class="md" nowrap valign="top">const char *&nbsp;</td>
621     <td class="mdname1" valign="top" nowrap> <em>s</em> </td>
622     <td class="md" valign="top">&nbsp;)&nbsp;</td>
623     <td class="md" nowrap></td>
624     </tr>
625     </table>
626     </td>
627     </tr>
628     </table>
629     <table cellspacing=5 cellpadding=0 border=0>
630     <tr>
631     <td>
632     &nbsp;
633     </td>
634     <td>
635    
636     <p>
637     Definition at line <a class="el" href="util_8c-source.html#l01694">1694</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
638     <p>
639     References <a class="el" href="spf_8h-source.html#l00233">policy_addr_s::addr</a>, <a class="el" href="spf_8h-source.html#l00232">policy_addr_s::cidr</a>, <a class="el" href="spf_8h.html#a40">policy_addr_t</a>, <a class="el" href="util_8h-source.html#l00108">SIZEOF</a>, <a class="el" href="util_8c-source.html#l00564">UTIL_index()</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00127">xfree</a>, <a class="el" href="util_8h-source.html#l00125">xmalloc</a>, <a class="el" href="util_8h-source.html#l00129">xstrndup</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
640     <p>
641     Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>.
642     <p>
643     Here is the call graph for this function:<p><center><img src="util_8c_a26_cgraph.png" border="0" usemap="#util_8c_a26_cgraph_map" alt=""></center>
644     <map name="util_8c_a26_cgraph_map">
645     <area href="util_8h.html#a35" shape="rect" coords="177,5,257,23" alt="">
646     </map>
647     </td>
648     </tr>
649     </table>
650     <a class="anchor" name="a12" doxytag="util.c::UTIL_free" ></a><p>
651     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
652     <tr>
653     <td class="mdRow">
654     <table cellpadding="0" cellspacing="0" border="0">
655     <tr>
656     <td class="md" nowrap valign="top"> void UTIL_free </td>
657     <td class="md" valign="top">(&nbsp;</td>
658     <td class="md" nowrap valign="top">void *&nbsp;</td>
659     <td class="mdname" nowrap> <em>p</em>, </td>
660     </tr>
661     <tr>
662     <td class="md" nowrap align="right"></td>
663     <td></td>
664     <td class="md" nowrap>const char *&nbsp;</td>
665     <td class="mdname" nowrap> <em>file</em>, </td>
666     </tr>
667     <tr>
668     <td class="md" nowrap align="right"></td>
669     <td></td>
670     <td class="md" nowrap>const int32_t&nbsp;</td>
671     <td class="mdname" nowrap> <em>line</em>, </td>
672     </tr>
673     <tr>
674     <td class="md" nowrap align="right"></td>
675     <td></td>
676     <td class="md" nowrap>const char *&nbsp;</td>
677     <td class="mdname" nowrap> <em>func</em></td>
678     </tr>
679     <tr>
680     <td></td>
681     <td class="md">)&nbsp;</td>
682     <td class="md" colspan="2"></td>
683     </tr>
684     </table>
685     </td>
686     </tr>
687     </table>
688     <table cellspacing=5 cellpadding=0 border=0>
689     <tr>
690     <td>
691     &nbsp;
692     </td>
693     <td>
694    
695     <p>
696     Definition at line <a class="el" href="util_8c-source.html#l00522">522</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
697     <p>
698     References <a class="el" href="util_8h-source.html#l00142">xvprintf</a>. </td>
699     </tr>
700     </table>
701     <a class="anchor" name="a6" doxytag="util.c::UTIL_get_date" ></a><p>
702     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
703     <tr>
704     <td class="mdRow">
705     <table cellpadding="0" cellspacing="0" border="0">
706     <tr>
707     <td class="md" nowrap valign="top"> char* UTIL_get_date </td>
708     <td class="md" valign="top">(&nbsp;</td>
709     <td class="md" nowrap valign="top">void&nbsp;</td>
710     <td class="mdname1" valign="top" nowrap> </td>
711     <td class="md" valign="top">&nbsp;)&nbsp;</td>
712     <td class="md" nowrap></td>
713     </tr>
714     </table>
715     </td>
716     </tr>
717     </table>
718     <table cellspacing=5 cellpadding=0 border=0>
719     <tr>
720     <td>
721     &nbsp;
722     </td>
723     <td>
724    
725     <p>
726     Definition at line <a class="el" href="util_8c-source.html#l00282">282</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
727     <p>
728     References <a class="el" href="util_8h-source.html#l00095">SPF_MAX_DATETIME</a>, <a class="el" href="util_8c-source.html#l00066">util_mutex</a>, <a class="el" href="util_8h-source.html#l00125">xmalloc</a>, <a class="el" href="util_8h-source.html#l00163">xpthread_mutex_lock</a>, and <a class="el" href="util_8h-source.html#l00164">xpthread_mutex_unlock</a>.
729     <p>
730     Referenced by <a class="el" href="util_8c-source.html#l00326">UTIL_log_result()</a>. </td>
731     </tr>
732     </table>
733     <a class="anchor" name="a29" doxytag="util.c::UTIL_get_dname" ></a><p>
734     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
735     <tr>
736     <td class="mdRow">
737     <table cellpadding="0" cellspacing="0" border="0">
738     <tr>
739     <td class="md" nowrap valign="top"> char* UTIL_get_dname </td>
740     <td class="md" valign="top">(&nbsp;</td>
741     <td class="md" nowrap valign="top">const char *&nbsp;</td>
742     <td class="mdname1" valign="top" nowrap> <em>s</em> </td>
743     <td class="md" valign="top">&nbsp;)&nbsp;</td>
744     <td class="md" nowrap></td>
745     </tr>
746     </table>
747     </td>
748     </tr>
749     </table>
750     <table cellspacing=5 cellpadding=0 border=0>
751     <tr>
752     <td>
753     &nbsp;
754     </td>
755     <td>
756    
757     <p>
758     Definition at line <a class="el" href="util_8c-source.html#l01906">1906</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
759     <p>
760     References <a class="el" href="util_8c-source.html#l00751">UTIL_count_delim()</a>, <a class="el" href="util_8c-source.html#l00615">UTIL_split_str()</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00138">xprintf</a>, <a class="el" href="util_8h-source.html#l00129">xstrndup</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
761     <p>
762     Here is the call graph for this function:<p><center><img src="util_8c_a29_cgraph.png" border="0" usemap="#util_8c_a29_cgraph_map" alt=""></center>
763     <map name="util_8c_a29_cgraph_map">
764     <area href="util_8h.html#a38" shape="rect" coords="180,5,297,24" alt="">
765     <area href="util_8h.html#a36" shape="rect" coords="193,48,284,66" alt="">
766     </map>
767     </td>
768     </tr>
769     </table>
770     <a class="anchor" name="a25" doxytag="util.c::UTIL_get_mech_prefix" ></a><p>
771     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
772     <tr>
773     <td class="mdRow">
774     <table cellpadding="0" cellspacing="0" border="0">
775     <tr>
776     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a36">SPF_RESULT</a> UTIL_get_mech_prefix </td>
777     <td class="md" valign="top">(&nbsp;</td>
778     <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
779     <td class="mdname" nowrap> <em>p</em>, </td>
780     </tr>
781     <tr>
782     <td class="md" nowrap align="right"></td>
783     <td></td>
784     <td class="md" nowrap>const char *&nbsp;</td>
785     <td class="mdname" nowrap> <em>s</em></td>
786     </tr>
787     <tr>
788     <td></td>
789     <td class="md">)&nbsp;</td>
790     <td class="md" colspan="2"></td>
791     </tr>
792     </table>
793     </td>
794     </tr>
795     </table>
796     <table cellspacing=5 cellpadding=0 border=0>
797     <tr>
798     <td>
799     &nbsp;
800     </td>
801     <td>
802    
803     <p>
804     Definition at line <a class="el" href="util_8c-source.html#l01555">1555</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
805     <p>
806     References <a class="el" href="spf_8h-source.html#l00330">peer_info_s::ALL</a>, <a class="el" href="spf_8h-source.html#l00358">peer_info_s::last_m</a>, <a class="el" href="spf_8h.html#a46">peer_info_t</a>, <a class="el" href="spf_8h-source.html#l00333">peer_info_s::RES_P</a>, <a class="el" href="spf_8h.html#a88a55">SPF_ERROR</a>, <a class="el" href="spf_8h.html#a88a54">SPF_H_FAIL</a>, <a class="el" href="spf_8h-source.html#l00083">SPF_MAX_HNAME</a>, <a class="el" href="spf_8h.html#a88a56">SPF_NEUTRAL</a>, <a class="el" href="spf_8h.html#a88a51">SPF_PASS</a>, <a class="el" href="spf_8h.html#a36">SPF_RESULT</a>, <a class="el" href="spf_8h.html#a88a53">SPF_S_FAIL</a>, <a class="el" href="spf_8h.html#a87a50">SPF_TRUE</a>, <a class="el" href="util_8c-source.html#l00564">UTIL_index()</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00138">xprintf</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
807     <p>
808     Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>.
809     <p>
810     Here is the call graph for this function:<p><center><img src="util_8c_a25_cgraph.png" border="0" usemap="#util_8c_a25_cgraph_map" alt=""></center>
811     <map name="util_8c_a25_cgraph_map">
812     <area href="util_8h.html#a35" shape="rect" coords="215,5,295,23" alt="">
813     </map>
814     </td>
815     </tr>
816     </table>
817     <a class="anchor" name="a23" doxytag="util.c::UTIL_get_policy_mech" ></a><p>
818     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
819     <tr>
820     <td class="mdRow">
821     <table cellpadding="0" cellspacing="0" border="0">
822     <tr>
823     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a38">SPF_MECHANISM</a> UTIL_get_policy_mech </td>
824     <td class="md" valign="top">(&nbsp;</td>
825     <td class="md" nowrap valign="top">const char *&nbsp;</td>
826     <td class="mdname1" valign="top" nowrap> <em>s</em> </td>
827     <td class="md" valign="top">&nbsp;)&nbsp;</td>
828     <td class="md" nowrap></td>
829     </tr>
830     </table>
831     </td>
832     </tr>
833     </table>
834     <table cellspacing=5 cellpadding=0 border=0>
835     <tr>
836     <td>
837     &nbsp;
838     </td>
839     <td>
840    
841     <p>
842     Definition at line <a class="el" href="util_8c-source.html#l01198">1198</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
843     <p>
844     References <a class="el" href="spf_8h.html#a90a67">A</a>, <a class="el" href="spf_8h.html#a90a65">ALL</a>, <a class="el" href="spf_8h.html#a90a75">DEFAULT</a>, <a class="el" href="spf_8h.html#a90a72">EXISTS</a>, <a class="el" href="spf_8h.html#a90a74">EXPLAIN</a>, <a class="el" href="spf_8h.html#a90a66">INCLUDE</a>, <a class="el" href="spf_8h.html#a90a70">IP4</a>, <a class="el" href="spf_8h.html#a90a71">IP6</a>, <a class="el" href="spf_8h.html#a90a68">MX</a>, <a class="el" href="spf_8h.html#a90a63">NO_POLICY</a>, <a class="el" href="spf_8h.html#a90a69">PTR</a>, <a class="el" href="spf_8h.html#a90a73">REDIRECT</a>, <a class="el" href="spf_8h.html#a38">SPF_MECHANISM</a>, <a class="el" href="spf_8h.html#a90a76">UNMECH</a>, <a class="el" href="spf_8h.html#a90a64">VERSION</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00146">xpprintf</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
845     <p>
846     Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>. </td>
847     </tr>
848     </table>
849     <a class="anchor" name="a13" doxytag="util.c::UTIL_index" ></a><p>
850     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
851     <tr>
852     <td class="mdRow">
853     <table cellpadding="0" cellspacing="0" border="0">
854     <tr>
855     <td class="md" nowrap valign="top"> int16_t UTIL_index </td>
856     <td class="md" valign="top">(&nbsp;</td>
857     <td class="md" nowrap valign="top">const char *&nbsp;</td>
858     <td class="mdname" nowrap> <em>s</em>, </td>
859     </tr>
860     <tr>
861     <td class="md" nowrap align="right"></td>
862     <td></td>
863     <td class="md" nowrap>const char&nbsp;</td>
864     <td class="mdname" nowrap> <em>c</em></td>
865     </tr>
866     <tr>
867     <td></td>
868     <td class="md">)&nbsp;</td>
869     <td class="md" colspan="2"></td>
870     </tr>
871     </table>
872     </td>
873     </tr>
874     </table>
875     <table cellspacing=5 cellpadding=0 border=0>
876     <tr>
877     <td>
878     &nbsp;
879     </td>
880     <td>
881    
882     <p>
883     Definition at line <a class="el" href="util_8c-source.html#l00564">564</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
884     <p>
885     References <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00146">xpprintf</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
886     <p>
887     Referenced by <a class="el" href="macro_8c-source.html#l00071">MACRO_expand()</a>, <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>, <a class="el" href="util_8c-source.html#l00980">UTIL_a_cmp()</a>, <a class="el" href="util_8c-source.html#l01309">UTIL_assoc_prefix()</a>, <a class="el" href="util_8c-source.html#l01694">UTIL_expand_ip()</a>, and <a class="el" href="util_8c-source.html#l01555">UTIL_get_mech_prefix()</a>. </td>
888     </tr>
889     </table>
890     <a class="anchor" name="a27" doxytag="util.c::UTIL_is_ip" ></a><p>
891     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
892     <tr>
893     <td class="mdRow">
894     <table cellpadding="0" cellspacing="0" border="0">
895     <tr>
896     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_is_ip </td>
897     <td class="md" valign="top">(&nbsp;</td>
898     <td class="md" nowrap valign="top">const char *&nbsp;</td>
899     <td class="mdname1" valign="top" nowrap> <em>id</em> </td>
900     <td class="md" valign="top">&nbsp;)&nbsp;</td>
901     <td class="md" nowrap></td>
902     </tr>
903     </table>
904     </td>
905     </tr>
906     </table>
907     <table cellspacing=5 cellpadding=0 border=0>
908     <tr>
909     <td>
910     &nbsp;
911     </td>
912     <td>
913    
914     <p>
915     Definition at line <a class="el" href="util_8c-source.html#l01793">1793</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
916     <p>
917     References <a class="el" href="spf_8h.html#a35">SPF_BOOL</a>, <a class="el" href="spf_8h.html#a87a49">SPF_FALSE</a>, <a class="el" href="spf_8h.html#a87a50">SPF_TRUE</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00146">xpprintf</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>. </td>
918     </tr>
919     </table>
920     <a class="anchor" name="a19" doxytag="util.c::UTIL_is_macro" ></a><p>
921     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
922     <tr>
923     <td class="mdRow">
924     <table cellpadding="0" cellspacing="0" border="0">
925     <tr>
926     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_is_macro </td>
927     <td class="md" valign="top">(&nbsp;</td>
928     <td class="md" nowrap valign="top">const char *&nbsp;</td>
929     <td class="mdname1" valign="top" nowrap> <em>s</em> </td>
930     <td class="md" valign="top">&nbsp;)&nbsp;</td>
931     <td class="md" nowrap></td>
932     </tr>
933     </table>
934     </td>
935     </tr>
936     </table>
937     <table cellspacing=5 cellpadding=0 border=0>
938     <tr>
939     <td>
940     &nbsp;
941     </td>
942     <td>
943    
944     <p>
945     Definition at line <a class="el" href="util_8c-source.html#l00869">869</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
946     <p>
947     References <a class="el" href="spf_8h.html#a35">SPF_BOOL</a>, <a class="el" href="spf_8h.html#a87a49">SPF_FALSE</a>, <a class="el" href="spf_8h.html#a87a50">SPF_TRUE</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00146">xpprintf</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
948     <p>
949     Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>. </td>
950     </tr>
951     </table>
952     <a class="anchor" name="a17" doxytag="util.c::UTIL_is_spf_delim" ></a><p>
953     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
954     <tr>
955     <td class="mdRow">
956     <table cellpadding="0" cellspacing="0" border="0">
957     <tr>
958     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_is_spf_delim </td>
959     <td class="md" valign="top">(&nbsp;</td>
960     <td class="md" nowrap valign="top">const char&nbsp;</td>
961     <td class="mdname1" valign="top" nowrap> <em>c</em> </td>
962     <td class="md" valign="top">&nbsp;)&nbsp;</td>
963     <td class="md" nowrap></td>
964     </tr>
965     </table>
966     </td>
967     </tr>
968     </table>
969     <table cellspacing=5 cellpadding=0 border=0>
970     <tr>
971     <td>
972     &nbsp;
973     </td>
974     <td>
975    
976     <p>
977     Definition at line <a class="el" href="util_8c-source.html#l00790">790</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
978     <p>
979     References <a class="el" href="spf_8h.html#a35">SPF_BOOL</a>, <a class="el" href="spf_8h.html#a87a49">SPF_FALSE</a>, <a class="el" href="spf_8h.html#a87a50">SPF_TRUE</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00146">xpprintf</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
980     <p>
981     Referenced by <a class="el" href="macro_8c-source.html#l00505">MACRO_eatmore()</a>. </td>
982     </tr>
983     </table>
984     <a class="anchor" name="a18" doxytag="util.c::UTIL_is_spf_result" ></a><p>
985     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
986     <tr>
987     <td class="mdRow">
988     <table cellpadding="0" cellspacing="0" border="0">
989     <tr>
990     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_is_spf_result </td>
991     <td class="md" valign="top">(&nbsp;</td>
992     <td class="md" nowrap valign="top">const char&nbsp;</td>
993     <td class="mdname1" valign="top" nowrap> <em>c</em> </td>
994     <td class="md" valign="top">&nbsp;)&nbsp;</td>
995     <td class="md" nowrap></td>
996     </tr>
997     </table>
998     </td>
999     </tr>
1000     </table>
1001     <table cellspacing=5 cellpadding=0 border=0>
1002     <tr>
1003     <td>
1004     &nbsp;
1005     </td>
1006     <td>
1007    
1008     <p>
1009     Definition at line <a class="el" href="util_8c-source.html#l00832">832</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
1010     <p>
1011     References <a class="el" href="spf_8h.html#a35">SPF_BOOL</a>, <a class="el" href="spf_8h.html#a87a49">SPF_FALSE</a>, <a class="el" href="spf_8h.html#a87a50">SPF_TRUE</a>, <a class="el" href="util_8h-source.html#l00146">xpprintf</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
1012     <p>
1013     Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>. </td>
1014     </tr>
1015     </table>
1016     <a class="anchor" name="a7" doxytag="util.c::UTIL_log_result" ></a><p>
1017     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1018     <tr>
1019     <td class="mdRow">
1020     <table cellpadding="0" cellspacing="0" border="0">
1021     <tr>
1022     <td class="md" nowrap valign="top"> void UTIL_log_result </td>
1023     <td class="md" valign="top">(&nbsp;</td>
1024     <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1025     <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1026     <td class="md" valign="top">&nbsp;)&nbsp;</td>
1027     <td class="md" nowrap></td>
1028     </tr>
1029     </table>
1030     </td>
1031     </tr>
1032     </table>
1033     <table cellspacing=5 cellpadding=0 border=0>
1034     <tr>
1035     <td>
1036     &nbsp;
1037     </td>
1038     <td>
1039    
1040     <p>
1041     Definition at line <a class="el" href="util_8c-source.html#l00326">326</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
1042     <p>
1043     References <a class="el" href="spf_8h-source.html#l00359">peer_info_s::error</a>, <a class="el" href="spf_8h-source.html#l00344">peer_info_s::from</a>, <a class="el" href="util_8h-source.html#l00213">OUTPUT_LOG_FILE</a>, <a class="el" href="spf_8h.html#a46">peer_info_t</a>, <a class="el" href="spf_8h-source.html#l00351">peer_info_s::r_ip</a>, <a class="el" href="spf_8h-source.html#l00332">peer_info_s::RES</a>, <a class="el" href="spf_8h-source.html#l00070">SPF_MAX_DEBUG</a>, <a class="el" href="spf_8h-source.html#l00361">peer_info_s::spf_result</a>, <a class="el" href="spf_8h-source.html#l00371">peer_info_s::spf_rlevel</a>, <a class="el" href="spf_8h-source.html#l00338">peer_info_s::spf_ver</a>, <a class="el" href="spf_8h-source.html#l00057">SPF_VERSION</a>, <a class="el" href="util_8c-source.html#l00282">UTIL_get_date()</a>, <a class="el" href="util_8c-source.html#l00066">util_mutex</a>, <a class="el" href="util_8h-source.html#l00127">xfree</a>, <a class="el" href="util_8h-source.html#l00125">xmalloc</a>, <a class="el" href="util_8h-source.html#l00163">xpthread_mutex_lock</a>, and <a class="el" href="util_8h-source.html#l00164">xpthread_mutex_unlock</a>.
1044     <p>
1045     Referenced by <a class="el" href="main_8c-source.html#l00570">SPF_policy_main_rec()</a>.
1046     <p>
1047     Here is the call graph for this function:<p><center><img src="util_8c_a7_cgraph.png" border="0" usemap="#util_8c_a7_cgraph_map" alt=""></center>
1048     <map name="util_8c_a7_cgraph_map">
1049     <area href="util_8c.html#a6" shape="rect" coords="173,5,272,23" alt="">
1050     </map>
1051     </td>
1052     </tr>
1053     </table>
1054     <a class="anchor" name="a10" doxytag="util.c::UTIL_malloc" ></a><p>
1055     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1056     <tr>
1057     <td class="mdRow">
1058     <table cellpadding="0" cellspacing="0" border="0">
1059     <tr>
1060     <td class="md" nowrap valign="top"> void* UTIL_malloc </td>
1061     <td class="md" valign="top">(&nbsp;</td>
1062     <td class="md" nowrap valign="top">const int32_t&nbsp;</td>
1063     <td class="mdname" nowrap> <em>n</em>, </td>
1064     </tr>
1065     <tr>
1066     <td class="md" nowrap align="right"></td>
1067     <td></td>
1068     <td class="md" nowrap>const char *&nbsp;</td>
1069     <td class="mdname" nowrap> <em>file</em>, </td>
1070     </tr>
1071     <tr>
1072     <td class="md" nowrap align="right"></td>
1073     <td></td>
1074     <td class="md" nowrap>int32_t&nbsp;</td>
1075     <td class="mdname" nowrap> <em>line</em>, </td>
1076     </tr>
1077     <tr>
1078     <td class="md" nowrap align="right"></td>
1079     <td></td>
1080     <td class="md" nowrap>const char *&nbsp;</td>
1081     <td class="mdname" nowrap> <em>func</em></td>
1082     </tr>
1083     <tr>
1084     <td></td>
1085     <td class="md">)&nbsp;</td>
1086     <td class="md" colspan="2"></td>
1087     </tr>
1088     </table>
1089     </td>
1090     </tr>
1091     </table>
1092     <table cellspacing=5 cellpadding=0 border=0>
1093     <tr>
1094     <td>
1095     &nbsp;
1096     </td>
1097     <td>
1098    
1099     <p>
1100     Definition at line <a class="el" href="util_8c-source.html#l00447">447</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
1101     <p>
1102     References <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
1103     <p>
1104     Referenced by <a class="el" href="util_8c-source.html#l00486">UTIL_realloc()</a>. </td>
1105     </tr>
1106     </table>
1107     <a class="anchor" name="a20" doxytag="util.c::UTIL_mx_cmp" ></a><p>
1108     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1109     <tr>
1110     <td class="mdRow">
1111     <table cellpadding="0" cellspacing="0" border="0">
1112     <tr>
1113     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_mx_cmp </td>
1114     <td class="md" valign="top">(&nbsp;</td>
1115     <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1116     <td class="mdname" nowrap> <em>p</em>, </td>
1117     </tr>
1118     <tr>
1119     <td class="md" nowrap align="right"></td>
1120     <td></td>
1121     <td class="md" nowrap>const char *&nbsp;</td>
1122     <td class="mdname" nowrap> <em>s</em>, </td>
1123     </tr>
1124     <tr>
1125     <td class="md" nowrap align="right"></td>
1126     <td></td>
1127     <td class="md" nowrap>const int8_t&nbsp;</td>
1128     <td class="mdname" nowrap> <em>cidr</em></td>
1129     </tr>
1130     <tr>
1131     <td></td>
1132     <td class="md">)&nbsp;</td>
1133     <td class="md" colspan="2"></td>
1134     </tr>
1135     </table>
1136     </td>
1137     </tr>
1138     </table>
1139     <table cellspacing=5 cellpadding=0 border=0>
1140     <tr>
1141     <td>
1142     &nbsp;
1143     </td>
1144     <td>
1145    
1146     <p>
1147     Definition at line <a class="el" href="util_8c-source.html#l00914">914</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
1148     <p>
1149     References <a class="el" href="spf_8h-source.html#l00363">peer_info_s::addr</a>, <a class="el" href="dns_8c-source.html#l00217">DNS_query()</a>, <a class="el" href="spf_8h-source.html#l00344">peer_info_s::from</a>, <a class="el" href="spf_8h.html#a46">peer_info_t</a>, <a class="el" href="spf_8h.html#a35">SPF_BOOL</a>, <a class="el" href="spf_8h.html#a87a49">SPF_FALSE</a>, <a class="el" href="spf_8h.html#a88a51">SPF_PASS</a>, <a class="el" href="spf_8h.html#a87a50">SPF_TRUE</a>, <a class="el" href="util_8c-source.html#l01309">UTIL_assoc_prefix()</a>, <a class="el" href="util_8c-source.html#l02100">UTIL_validate_hostname()</a>, <a class="el" href="util_8h-source.html#l00127">xfree</a>, <a class="el" href="util_8h-source.html#l00146">xpprintf</a>, <a class="el" href="util_8h-source.html#l00129">xstrndup</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
1150     <p>
1151     Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>.
1152     <p>
1153     Here is the call graph for this function:<p><center><img src="util_8c_a20_cgraph.png" border="0" usemap="#util_8c_a20_cgraph_map" alt=""></center>
1154     <map name="util_8c_a20_cgraph_map">
1155     <area href="dns_8h.html#a8" shape="rect" coords="165,188,245,206" alt="">
1156     <area href="util_8h.html#a54" shape="rect" coords="485,230,643,249" alt="">
1157     <area href="util_8h.html#a47" shape="rect" coords="693,277,813,296" alt="">
1158     <area href="dns_8h.html#a12" shape="rect" coords="296,145,435,164" alt="">
1159     <area href="dns_8h.html#a10" shape="rect" coords="307,188,424,206" alt="">
1160     <area href="dns_8h.html#a11" shape="rect" coords="309,230,421,249" alt="">
1161     <area href="dns_8h.html#a9" shape="rect" coords="309,102,421,121" alt="">
1162     <area href="util_8h.html#a52" shape="rect" coords="703,230,804,249" alt="">
1163     </map>
1164     </td>
1165     </tr>
1166     </table>
1167     <a class="anchor" name="a22" doxytag="util.c::UTIL_ptr_cmp" ></a><p>
1168     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1169     <tr>
1170     <td class="mdRow">
1171     <table cellpadding="0" cellspacing="0" border="0">
1172     <tr>
1173     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_ptr_cmp </td>
1174     <td class="md" valign="top">(&nbsp;</td>
1175     <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1176     <td class="mdname" nowrap> <em>p</em>, </td>
1177     </tr>
1178     <tr>
1179     <td class="md" nowrap align="right"></td>
1180     <td></td>
1181     <td class="md" nowrap>const char *&nbsp;</td>
1182     <td class="mdname" nowrap> <em>s</em></td>
1183     </tr>
1184     <tr>
1185     <td></td>
1186     <td class="md">)&nbsp;</td>
1187     <td class="md" colspan="2"></td>
1188     </tr>
1189     </table>
1190     </td>
1191     </tr>
1192     </table>
1193     <table cellspacing=5 cellpadding=0 border=0>
1194     <tr>
1195     <td>
1196     &nbsp;
1197     </td>
1198     <td>
1199    
1200     <p>
1201     Definition at line <a class="el" href="util_8c-source.html#l01135">1135</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
1202     <p>
1203     References <a class="el" href="spf_8h-source.html#l00349">peer_info_s::current_domain</a>, <a class="el" href="dns_8c-source.html#l00217">DNS_query()</a>, <a class="el" href="spf_8h-source.html#l00359">peer_info_s::error</a>, <a class="el" href="spf_8h.html#a46">peer_info_t</a>, <a class="el" href="spf_8h-source.html#l00351">peer_info_s::r_ip</a>, <a class="el" href="spf_8h-source.html#l00341">peer_info_s::rs</a>, <a class="el" href="spf_8h.html#a35">SPF_BOOL</a>, <a class="el" href="spf_8h.html#a87a49">SPF_FALSE</a>, <a class="el" href="spf_8h-source.html#l00083">SPF_MAX_HNAME</a>, <a class="el" href="spf_8h.html#a87a50">SPF_TRUE</a>, <a class="el" href="util_8c-source.html#l01843">UTIL_rev_addr()</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00127">xfree</a>, <a class="el" href="util_8h-source.html#l00129">xstrndup</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
1204     <p>
1205     Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>.
1206     <p>
1207     Here is the call graph for this function:<p><center><img src="util_8c_a22_cgraph.png" border="0" usemap="#util_8c_a22_cgraph_map" alt=""></center>
1208     <map name="util_8c_a22_cgraph_map">
1209     <area href="dns_8h.html#a8" shape="rect" coords="173,90,253,109" alt="">
1210     <area href="util_8h.html#a50" shape="rect" coords="163,133,264,152" alt="">
1211     <area href="dns_8h.html#a12" shape="rect" coords="315,5,453,24" alt="">
1212     <area href="dns_8h.html#a10" shape="rect" coords="325,48,443,66" alt="">
1213     <area href="dns_8h.html#a11" shape="rect" coords="328,90,440,109" alt="">
1214     <area href="util_8h.html#a47" shape="rect" coords="712,134,832,153" alt="">
1215     <area href="dns_8h.html#a9" shape="rect" coords="328,184,440,202" alt="">
1216     <area href="util_8h.html#a54" shape="rect" coords="504,90,661,109" alt="">
1217     <area href="util_8h.html#a52" shape="rect" coords="721,90,823,109" alt="">
1218     </map>
1219     </td>
1220     </tr>
1221     </table>
1222     <a class="anchor" name="a11" doxytag="util.c::UTIL_realloc" ></a><p>
1223     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1224     <tr>
1225     <td class="mdRow">
1226     <table cellpadding="0" cellspacing="0" border="0">
1227     <tr>
1228     <td class="md" nowrap valign="top"> void* UTIL_realloc </td>
1229     <td class="md" valign="top">(&nbsp;</td>
1230     <td class="md" nowrap valign="top">void *&nbsp;</td>
1231     <td class="mdname" nowrap> <em>p</em>, </td>
1232     </tr>
1233     <tr>
1234     <td class="md" nowrap align="right"></td>
1235     <td></td>
1236     <td class="md" nowrap>const int32_t&nbsp;</td>
1237     <td class="mdname" nowrap> <em>n</em>, </td>
1238     </tr>
1239     <tr>
1240     <td class="md" nowrap align="right"></td>
1241     <td></td>
1242     <td class="md" nowrap>const char *&nbsp;</td>
1243     <td class="mdname" nowrap> <em>file</em>, </td>
1244     </tr>
1245     <tr>
1246     <td class="md" nowrap align="right"></td>
1247     <td></td>
1248     <td class="md" nowrap>const int32_t&nbsp;</td>
1249     <td class="mdname" nowrap> <em>line</em>, </td>
1250     </tr>
1251     <tr>
1252     <td class="md" nowrap align="right"></td>
1253     <td></td>
1254     <td class="md" nowrap>const char *&nbsp;</td>
1255     <td class="mdname" nowrap> <em>func</em></td>
1256     </tr>
1257     <tr>
1258     <td></td>
1259     <td class="md">)&nbsp;</td>
1260     <td class="md" colspan="2"></td>
1261     </tr>
1262     </table>
1263     </td>
1264     </tr>
1265     </table>
1266     <table cellspacing=5 cellpadding=0 border=0>
1267     <tr>
1268     <td>
1269     &nbsp;
1270     </td>
1271     <td>
1272    
1273     <p>
1274     Definition at line <a class="el" href="util_8c-source.html#l00486">486</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
1275     <p>
1276     References <a class="el" href="util_8c-source.html#l00447">UTIL_malloc()</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
1277     <p>
1278     Here is the call graph for this function:<p><center><img src="util_8c_a11_cgraph.png" border="0" usemap="#util_8c_a11_cgraph_map" alt=""></center>
1279     <map name="util_8c_a11_cgraph_map">
1280     <area href="util_8h.html#a28" shape="rect" coords="153,5,239,23" alt="">
1281     </map>
1282     </td>
1283     </tr>
1284     </table>
1285     <a class="anchor" name="a28" doxytag="util.c::UTIL_rev_addr" ></a><p>
1286     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1287     <tr>
1288     <td class="mdRow">
1289     <table cellpadding="0" cellspacing="0" border="0">
1290     <tr>
1291     <td class="md" nowrap valign="top"> char* UTIL_rev_addr </td>
1292     <td class="md" valign="top">(&nbsp;</td>
1293     <td class="md" nowrap valign="top">const char *&nbsp;</td>
1294     <td class="mdname1" valign="top" nowrap> <em>s</em> </td>
1295     <td class="md" valign="top">&nbsp;)&nbsp;</td>
1296     <td class="md" nowrap></td>
1297     </tr>
1298     </table>
1299     </td>
1300     </tr>
1301     </table>
1302     <table cellspacing=5 cellpadding=0 border=0>
1303     <tr>
1304     <td>
1305     &nbsp;
1306     </td>
1307     <td>
1308    
1309     <p>
1310     Definition at line <a class="el" href="util_8c-source.html#l01843">1843</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
1311     <p>
1312     References <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00127">xfree</a>, <a class="el" href="util_8h-source.html#l00125">xmalloc</a>, <a class="el" href="util_8h-source.html#l00138">xprintf</a>, <a class="el" href="util_8h-source.html#l00129">xstrndup</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
1313     <p>
1314     Referenced by <a class="el" href="dns_8c-source.html#l00975">DNS_check_client_reverse()</a>, <a class="el" href="util_8c-source.html#l01135">UTIL_ptr_cmp()</a>, and <a class="el" href="util_8c-source.html#l02038">UTIL_validate_ptr()</a>. </td>
1315     </tr>
1316     </table>
1317     <a class="anchor" name="a34" doxytag="util.c::UTIL_reverse" ></a><p>
1318     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1319     <tr>
1320     <td class="mdRow">
1321     <table cellpadding="0" cellspacing="0" border="0">
1322     <tr>
1323     <td class="md" nowrap valign="top"> char* UTIL_reverse </td>
1324     <td class="md" valign="top">(&nbsp;</td>
1325     <td class="md" nowrap valign="top">const char *&nbsp;</td>
1326     <td class="mdname" nowrap> <em>s</em>, </td>
1327     </tr>
1328     <tr>
1329     <td class="md" nowrap align="right"></td>
1330     <td></td>
1331     <td class="md" nowrap>const char&nbsp;</td>
1332     <td class="mdname" nowrap> <em>delim</em></td>
1333     </tr>
1334     <tr>
1335     <td></td>
1336     <td class="md">)&nbsp;</td>
1337     <td class="md" colspan="2"></td>
1338     </tr>
1339     </table>
1340     </td>
1341     </tr>
1342     </table>
1343     <table cellspacing=5 cellpadding=0 border=0>
1344     <tr>
1345     <td>
1346     &nbsp;
1347     </td>
1348     <td>
1349    
1350     <p>
1351     Definition at line <a class="el" href="util_8c-source.html#l02331">2331</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
1352     <p>
1353     References <a class="el" href="spf_8h-source.html#l00299">split_str_s::elements</a>, <a class="el" href="spf_8h-source.html#l00297">split_str_s::head</a>, <a class="el" href="spf_8h-source.html#l00283">split_str_node_s::len</a>, <a class="el" href="spf_8h-source.html#l00285">split_str_node_s::next</a>, <a class="el" href="spf_8h-source.html#l00284">split_str_node_s::s</a>, <a class="el" href="util_8h-source.html#l00108">SIZEOF</a>, <a class="el" href="spf_8h.html#a87a49">SPF_FALSE</a>, <a class="el" href="spf_8h.html#a87a50">SPF_TRUE</a>, <a class="el" href="spf_8h.html#a44">split_str_node_t</a>, <a class="el" href="spf_8h.html#a45">split_str_t</a>, <a class="el" href="spf_8h-source.html#l00298">split_str_s::tail</a>, <a class="el" href="util_8c-source.html#l02421">UTIL_addnode()</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00127">xfree</a>, <a class="el" href="util_8h-source.html#l00125">xmalloc</a>, <a class="el" href="util_8h-source.html#l00129">xstrndup</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
1354     <p>
1355     Referenced by <a class="el" href="macro_8c-source.html#l00505">MACRO_eatmore()</a>.
1356     <p>
1357     Here is the call graph for this function:<p><center><img src="util_8c_a34_cgraph.png" border="0" usemap="#util_8c_a34_cgraph_map" alt=""></center>
1358     <map name="util_8c_a34_cgraph_map">
1359     <area href="util_8h.html#a57" shape="rect" coords="157,5,256,23" alt="">
1360     </map>
1361     </td>
1362     </tr>
1363     </table>
1364     <a class="anchor" name="a14" doxytag="util.c::UTIL_split_str" ></a><p>
1365     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1366     <tr>
1367     <td class="mdRow">
1368     <table cellpadding="0" cellspacing="0" border="0">
1369     <tr>
1370     <td class="md" nowrap valign="top"> char* UTIL_split_str </td>
1371     <td class="md" valign="top">(&nbsp;</td>
1372     <td class="md" nowrap valign="top">const char *&nbsp;</td>
1373     <td class="mdname" nowrap> <em>s</em>, </td>
1374     </tr>
1375     <tr>
1376     <td class="md" nowrap align="right"></td>
1377     <td></td>
1378     <td class="md" nowrap>const char&nbsp;</td>
1379     <td class="mdname" nowrap> <em>c</em>, </td>
1380     </tr>
1381     <tr>
1382     <td class="md" nowrap align="right"></td>
1383     <td></td>
1384     <td class="md" nowrap>const u_int8_t&nbsp;</td>
1385     <td class="mdname" nowrap> <em>num</em></td>
1386     </tr>
1387     <tr>
1388     <td></td>
1389     <td class="md">)&nbsp;</td>
1390     <td class="md" colspan="2"></td>
1391     </tr>
1392     </table>
1393     </td>
1394     </tr>
1395     </table>
1396     <table cellspacing=5 cellpadding=0 border=0>
1397     <tr>
1398     <td>
1399     &nbsp;
1400     </td>
1401     <td>
1402    
1403     <p>
1404     Definition at line <a class="el" href="util_8c-source.html#l00615">615</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
1405     <p>
1406     References <a class="el" href="spf_8h-source.html#l00072">SPF_MAX_STR</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00127">xfree</a>, <a class="el" href="util_8h-source.html#l00129">xstrndup</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
1407     <p>
1408     Referenced by <a class="el" href="util_8c-source.html#l01906">UTIL_get_dname()</a>. </td>
1409     </tr>
1410     </table>
1411     <a class="anchor" name="a15" doxytag="util.c::UTIL_split_strr" ></a><p>
1412     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1413     <tr>
1414     <td class="mdRow">
1415     <table cellpadding="0" cellspacing="0" border="0">
1416     <tr>
1417     <td class="md" nowrap valign="top"> char* UTIL_split_strr </td>
1418     <td class="md" valign="top">(&nbsp;</td>
1419     <td class="md" nowrap valign="top">const char *&nbsp;</td>
1420     <td class="mdname" nowrap> <em>s</em>, </td>
1421     </tr>
1422     <tr>
1423     <td class="md" nowrap align="right"></td>
1424     <td></td>
1425     <td class="md" nowrap>const char&nbsp;</td>
1426     <td class="mdname" nowrap> <em>c</em>, </td>
1427     </tr>
1428     <tr>
1429     <td class="md" nowrap align="right"></td>
1430     <td></td>
1431     <td class="md" nowrap>const u_int8_t&nbsp;</td>
1432     <td class="mdname" nowrap> <em>num</em></td>
1433     </tr>
1434     <tr>
1435     <td></td>
1436     <td class="md">)&nbsp;</td>
1437     <td class="md" colspan="2"></td>
1438     </tr>
1439     </table>
1440     </td>
1441     </tr>
1442     </table>
1443     <table cellspacing=5 cellpadding=0 border=0>
1444     <tr>
1445     <td>
1446     &nbsp;
1447     </td>
1448     <td>
1449    
1450     <p>
1451     Definition at line <a class="el" href="util_8c-source.html#l00684">684</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
1452     <p>
1453     References <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00128">xstrdup</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
1454     <p>
1455     Referenced by <a class="el" href="macro_8c-source.html#l00505">MACRO_eatmore()</a>. </td>
1456     </tr>
1457     </table>
1458     <a class="anchor" name="a9" doxytag="util.c::UTIL_strdup" ></a><p>
1459     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1460     <tr>
1461     <td class="mdRow">
1462     <table cellpadding="0" cellspacing="0" border="0">
1463     <tr>
1464     <td class="md" nowrap valign="top"> char* UTIL_strdup </td>
1465     <td class="md" valign="top">(&nbsp;</td>
1466     <td class="md" nowrap valign="top">const char *&nbsp;</td>
1467     <td class="mdname1" valign="top" nowrap> <em>s</em> </td>
1468     <td class="md" valign="top">&nbsp;)&nbsp;</td>
1469     <td class="md" nowrap></td>
1470     </tr>
1471     </table>
1472     </td>
1473     </tr>
1474     </table>
1475     <table cellspacing=5 cellpadding=0 border=0>
1476     <tr>
1477     <td>
1478     &nbsp;
1479     </td>
1480     <td>
1481    
1482     <p>
1483     Definition at line <a class="el" href="util_8c-source.html#l00412">412</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
1484     <p>
1485     References <a class="el" href="spf_8h.html#a87a49">SPF_FALSE</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>. </td>
1486     </tr>
1487     </table>
1488     <a class="anchor" name="a8" doxytag="util.c::UTIL_strndup" ></a><p>
1489     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1490     <tr>
1491     <td class="mdRow">
1492     <table cellpadding="0" cellspacing="0" border="0">
1493     <tr>
1494     <td class="md" nowrap valign="top"> char* UTIL_strndup </td>
1495     <td class="md" valign="top">(&nbsp;</td>
1496     <td class="md" nowrap valign="top">const char *&nbsp;</td>
1497     <td class="mdname" nowrap> <em>s</em>, </td>
1498     </tr>
1499     <tr>
1500     <td class="md" nowrap align="right"></td>
1501     <td></td>
1502     <td class="md" nowrap>const size_t&nbsp;</td>
1503     <td class="mdname" nowrap> <em>n</em></td>
1504     </tr>
1505     <tr>
1506     <td></td>
1507     <td class="md">)&nbsp;</td>
1508     <td class="md" colspan="2"></td>
1509     </tr>
1510     </table>
1511     </td>
1512     </tr>
1513     </table>
1514     <table cellspacing=5 cellpadding=0 border=0>
1515     <tr>
1516     <td>
1517     &nbsp;
1518     </td>
1519     <td>
1520    
1521     <p>
1522     Definition at line <a class="el" href="util_8c-source.html#l00378">378</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
1523     <p>
1524     References <a class="el" href="spf_8h.html#a87a49">SPF_FALSE</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00125">xmalloc</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>. </td>
1525     </tr>
1526     </table>
1527     <a class="anchor" name="a33" doxytag="util.c::UTIL_url_encode" ></a><p>
1528     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1529     <tr>
1530     <td class="mdRow">
1531     <table cellpadding="0" cellspacing="0" border="0">
1532     <tr>
1533     <td class="md" nowrap valign="top"> char* UTIL_url_encode </td>
1534     <td class="md" valign="top">(&nbsp;</td>
1535     <td class="md" nowrap valign="top">const char *&nbsp;</td>
1536     <td class="mdname1" valign="top" nowrap> <em>s</em> </td>
1537     <td class="md" valign="top">&nbsp;)&nbsp;</td>
1538     <td class="md" nowrap></td>
1539     </tr>
1540     </table>
1541     </td>
1542     </tr>
1543     </table>
1544     <table cellspacing=5 cellpadding=0 border=0>
1545     <tr>
1546     <td>
1547     &nbsp;
1548     </td>
1549     <td>
1550    
1551     <p>
1552     Definition at line <a class="el" href="util_8c-source.html#l02272">2272</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
1553     <p>
1554     References <a class="el" href="util_8h-source.html#l00171">urlchr_test</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00125">xmalloc</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>. </td>
1555     </tr>
1556     </table>
1557     <a class="anchor" name="a32" doxytag="util.c::UTIL_validate_hostname" ></a><p>
1558     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1559     <tr>
1560     <td class="mdRow">
1561     <table cellpadding="0" cellspacing="0" border="0">
1562     <tr>
1563     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_validate_hostname </td>
1564     <td class="md" valign="top">(&nbsp;</td>
1565     <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1566     <td class="mdname" nowrap> <em>p</em>, </td>
1567     </tr>
1568     <tr>
1569     <td class="md" nowrap align="right"></td>
1570     <td></td>
1571     <td class="md" nowrap>const char *&nbsp;</td>
1572     <td class="mdname" nowrap> <em>s</em>, </td>
1573     </tr>
1574     <tr>
1575     <td class="md" nowrap align="right"></td>
1576     <td></td>
1577     <td class="md" nowrap>const int8_t&nbsp;</td>
1578     <td class="mdname" nowrap> <em>cidr</em></td>
1579     </tr>
1580     <tr>
1581     <td></td>
1582     <td class="md">)&nbsp;</td>
1583     <td class="md" colspan="2"></td>
1584     </tr>
1585     </table>
1586     </td>
1587     </tr>
1588     </table>
1589     <table cellspacing=5 cellpadding=0 border=0>
1590     <tr>
1591     <td>
1592     &nbsp;
1593     </td>
1594     <td>
1595    
1596     <p>
1597     Definition at line <a class="el" href="util_8c-source.html#l02100">2100</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
1598     <p>
1599     References <a class="el" href="spf_8h-source.html#l00363">peer_info_s::addr</a>, <a class="el" href="spf_8h.html#a46">peer_info_t</a>, <a class="el" href="spf_8h.html#a40">policy_addr_t</a>, <a class="el" href="spf_8h-source.html#l00351">peer_info_s::r_ip</a>, <a class="el" href="util_8h-source.html#l00108">SIZEOF</a>, <a class="el" href="spf_8h.html#a35">SPF_BOOL</a>, <a class="el" href="spf_8h.html#a87a49">SPF_FALSE</a>, <a class="el" href="util_8h-source.html#l00098">SPF_MAX_GHBNR_DBUF</a>, <a class="el" href="spf_8h-source.html#l00079">SPF_MAX_IP_ADDR</a>, <a class="el" href="spf_8h.html#a88a51">SPF_PASS</a>, <a class="el" href="spf_8h.html#a87a50">SPF_TRUE</a>, <a class="el" href="util_8c-source.html#l01309">UTIL_assoc_prefix()</a>, <a class="el" href="util_8c-source.html#l01961">UTIL_cidr_cmp()</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00127">xfree</a>, <a class="el" href="dns_8h-source.html#l00121">xgethostbyname</a>, <a class="el" href="dns_8h-source.html#l00122">xgethostbyname_free</a>, <a class="el" href="util_8h-source.html#l00125">xmalloc</a>, <a class="el" href="util_8h-source.html#l00146">xpprintf</a>, <a class="el" href="util_8h-source.html#l00129">xstrndup</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
1600     <p>
1601     Referenced by <a class="el" href="dns_8c-source.html#l00975">DNS_check_client_reverse()</a>, <a class="el" href="dns_8c-source.html#l00716">DNS_ptr_answer()</a>, and <a class="el" href="util_8c-source.html#l00914">UTIL_mx_cmp()</a>.
1602     <p>
1603     Here is the call graph for this function:<p><center><img src="util_8c_a32_cgraph.png" border="0" usemap="#util_8c_a32_cgraph_map" alt=""></center>
1604     <map name="util_8c_a32_cgraph_map">
1605     <area href="util_8h.html#a47" shape="rect" coords="227,5,347,24" alt="">
1606     <area href="util_8h.html#a52" shape="rect" coords="236,48,337,66" alt="">
1607     <area href="util_8h.html#a35" shape="rect" coords="396,5,476,24" alt="">
1608     </map>
1609     </td>
1610     </tr>
1611     </table>
1612     <a class="anchor" name="a31" doxytag="util.c::UTIL_validate_ptr" ></a><p>
1613     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1614     <tr>
1615     <td class="mdRow">
1616     <table cellpadding="0" cellspacing="0" border="0">
1617     <tr>
1618     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_validate_ptr </td>
1619     <td class="md" valign="top">(&nbsp;</td>
1620     <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1621     <td class="mdname1" valign="top" nowrap> <em>p</em> </td>
1622     <td class="md" valign="top">&nbsp;)&nbsp;</td>
1623     <td class="md" nowrap></td>
1624     </tr>
1625     </table>
1626     </td>
1627     </tr>
1628     </table>
1629     <table cellspacing=5 cellpadding=0 border=0>
1630     <tr>
1631     <td>
1632     &nbsp;
1633     </td>
1634     <td>
1635    
1636     <p>
1637     Definition at line <a class="el" href="util_8c-source.html#l02038">2038</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
1638     <p>
1639     References <a class="el" href="spf_8h-source.html#l00349">peer_info_s::current_domain</a>, <a class="el" href="dns_8c-source.html#l00217">DNS_query()</a>, <a class="el" href="spf_8h-source.html#l00359">peer_info_s::error</a>, <a class="el" href="spf_8h.html#a46">peer_info_t</a>, <a class="el" href="spf_8h-source.html#l00351">peer_info_s::r_ip</a>, <a class="el" href="spf_8h-source.html#l00352">peer_info_s::r_vhname</a>, <a class="el" href="spf_8h-source.html#l00341">peer_info_s::rs</a>, <a class="el" href="spf_8h.html#a35">SPF_BOOL</a>, <a class="el" href="spf_8h.html#a87a49">SPF_FALSE</a>, <a class="el" href="spf_8h-source.html#l00083">SPF_MAX_HNAME</a>, <a class="el" href="spf_8h.html#a87a50">SPF_TRUE</a>, <a class="el" href="util_8c-source.html#l01843">UTIL_rev_addr()</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, <a class="el" href="util_8h-source.html#l00127">xfree</a>, <a class="el" href="util_8h-source.html#l00129">xstrndup</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
1640     <p>
1641     Here is the call graph for this function:<p><center><img src="util_8c_a31_cgraph.png" border="0" usemap="#util_8c_a31_cgraph_map" alt=""></center>
1642     <map name="util_8c_a31_cgraph_map">
1643     <area href="dns_8h.html#a8" shape="rect" coords="197,90,277,109" alt="">
1644     <area href="util_8h.html#a50" shape="rect" coords="187,133,288,152" alt="">
1645     <area href="dns_8h.html#a12" shape="rect" coords="339,5,477,24" alt="">
1646     <area href="dns_8h.html#a10" shape="rect" coords="349,48,467,66" alt="">
1647     <area href="dns_8h.html#a11" shape="rect" coords="352,90,464,109" alt="">
1648     <area href="util_8h.html#a47" shape="rect" coords="736,134,856,153" alt="">
1649     <area href="dns_8h.html#a9" shape="rect" coords="352,184,464,202" alt="">
1650     <area href="util_8h.html#a54" shape="rect" coords="528,90,685,109" alt="">
1651     <area href="util_8h.html#a52" shape="rect" coords="745,90,847,109" alt="">
1652     </map>
1653     </td>
1654     </tr>
1655     </table>
1656     <hr><h2>Variable Documentation</h2>
1657     <a class="anchor" name="a1" doxytag="util.c::errno" ></a><p>
1658     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1659     <tr>
1660     <td class="mdRow">
1661     <table cellpadding="0" cellspacing="0" border="0">
1662     <tr>
1663     <td class="md" nowrap valign="top"> int <a class="el" href="util_8c.html#a1">errno</a> </td>
1664     </tr>
1665     </table>
1666     </td>
1667     </tr>
1668     </table>
1669     <table cellspacing=5 cellpadding=0 border=0>
1670     <tr>
1671     <td>
1672     &nbsp;
1673     </td>
1674     <td>
1675    
1676     <p>
1677     </td>
1678     </tr>
1679     </table>
1680     <a class="anchor" name="a0" doxytag="util.c::util_mutex" ></a><p>
1681     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1682     <tr>
1683     <td class="mdRow">
1684     <table cellpadding="0" cellspacing="0" border="0">
1685     <tr>
1686     <td class="md" nowrap valign="top"> void* <a class="el" href="util_8h.html#a23">util_mutex</a> </td>
1687     </tr>
1688     </table>
1689     </td>
1690     </tr>
1691     </table>
1692     <table cellspacing=5 cellpadding=0 border=0>
1693     <tr>
1694     <td>
1695     &nbsp;
1696     </td>
1697     <td>
1698    
1699     <p>
1700     Definition at line <a class="el" href="util_8c-source.html#l00066">66</a> of file <a class="el" href="util_8c-source.html">util.c</a>.
1701     <p>
1702     Referenced by <a class="el" href="util_8c-source.html#l00154">_printf_dbg()</a>, <a class="el" href="util_8c-source.html#l00282">UTIL_get_date()</a>, and <a class="el" href="util_8c-source.html#l00326">UTIL_log_result()</a>. </td>
1703     </tr>
1704     </table>
1705     <hr size="1"><address style="align: right;"><small>Generated on Thu Sep 16 18:10:51 2004 for libSPF v1.0 by
1706     <a href="http://www.doxygen.org/index.html">
1707     <img src="doxygen.png" alt="doxygen" align="middle" border=0 ></a> 1.3.8 </small></address>
1708     </body>
1709     </html>