ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/libspf/docs/API/doxygen/html/util_8h.html
Revision: 1.1
Committed: Tue Nov 13 00:51:32 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

# Content
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.h 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.h File Reference</h1><code>#include "../../config.h"</code><br>
10 <code>#include &lt;stdio.h&gt;</code><br>
11 <code>#include &lt;stdlib.h&gt;</code><br>
12 <code>#include &lt;stdarg.h&gt;</code><br>
13 <code>#include &lt;string.h&gt;</code><br>
14 <code>#include &lt;strings.h&gt;</code><br>
15 <code>#include &lt;unistd.h&gt;</code><br>
16 <code>#include &lt;sys/socket.h&gt;</code><br>
17 <code>#include &lt;netinet/in.h&gt;</code><br>
18 <code>#include &lt;time.h&gt;</code><br>
19 <code>#include &lt;ctype.h&gt;</code><br>
20 <code>#include &lt;stdint.h&gt;</code><br>
21 <code>#include "<a class="el" href="main_8h-source.html">main.h</a>"</code><br>
22
23 <p>
24 Include dependency graph for util.h:<p><center><img src="util_8h__incl.png" border="0" usemap="#util.h_map" alt="Include dependency graph"></center>
25 <map name="util.h_map">
26 <area href="main_8h.html" shape="rect" coords="211,155,261,174" alt="">
27 <area href="spf_8h.html" shape="rect" coords="257,86,295,105" alt="">
28 </map>
29
30 <p>
31 This graph shows which files directly or indirectly include this file:<p><center><img src="util_8h__dep__incl.png" border="0" usemap="#util.hdep_map" alt="Included by dependency graph"></center>
32 <map name="util.hdep_map">
33 <area href="dns_8c.html" shape="rect" coords="7,17,49,36" alt="">
34 <area href="macro_8c.html" shape="rect" coords="73,17,132,36" alt="">
35 <area href="main_8c.html" shape="rect" coords="156,17,207,36" alt="">
36 <area href="util_8c.html" shape="rect" coords="231,17,268,36" alt="">
37 </map>
38
39 <p>
40 <a href="util_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
41 <tr><td></td></tr>
42 <tr><td colspan=2><br><h2>Defines</h2></td></tr>
43 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a0">_UTIL_H</a>&nbsp;&nbsp;&nbsp;1</td></tr>
44
45 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a1">SPF_MAX_DATETIME</a>&nbsp;&nbsp;&nbsp;26</td></tr>
46
47 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a2">SPF_MAX_GHBNR_DBUF</a>&nbsp;&nbsp;&nbsp;2048</td></tr>
48
49 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a3">SIZEOF</a>(object)&nbsp;&nbsp;&nbsp;((size_t) sizeof(object))</td></tr>
50
51 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a4">xmalloc</a>(n)&nbsp;&nbsp;&nbsp;UTIL_malloc(n, __FILE__, __LINE__, __FUNCTION__)</td></tr>
52
53 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a5">xrealloc</a>(m, n)&nbsp;&nbsp;&nbsp;UTIL_realloc(m, n, __FILE__, __LINE__, __FUNCTION__)</td></tr>
54
55 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a6">xfree</a>(m)&nbsp;&nbsp;&nbsp;UTIL_free(m, __FILE__, __LINE__, __FUNCTION__)</td></tr>
56
57 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a7">xstrdup</a>(m)&nbsp;&nbsp;&nbsp;UTIL_strdup(m)</td></tr>
58
59 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a8">xstrndup</a>(m, n)&nbsp;&nbsp;&nbsp;UTIL_strndup(m, n)</td></tr>
60
61 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a9">xprintf</a>(format,)&nbsp;&nbsp;&nbsp;dbg_printf(FL_A, __FUNCTION__, __FILE__, __LINE__, format, __VA_ARGS__)</td></tr>
62
63 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a10">xvprintf</a>(format,)&nbsp;&nbsp;&nbsp;dbg_printf(FL_B, __FUNCTION__, __FILE__, __LINE__, format, __VA_ARGS__)</td></tr>
64
65 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a11">xpprintf</a>(s)&nbsp;&nbsp;&nbsp;dbg_pprintf(FL_D, __FUNCTION__, __FILE__, __LINE__, s)</td></tr>
66
67 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a12">xeprintf</a>(format,)&nbsp;&nbsp;&nbsp;dbg_printf(FL_E, __FUNCTION__, __FILE__, __LINE__, format, __VA_ARGS__)</td></tr>
68
69 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a13">xepprintf</a>(s)&nbsp;&nbsp;&nbsp;dbg_pprintf(FL_F, __FUNCTION__, __FILE__, __LINE__, s)</td></tr>
70
71 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a14">xpthread_mutex_lock</a>(m)&nbsp;&nbsp;&nbsp;_UTIL_pthread_mutex(m, SPF_TRUE)</td></tr>
72
73 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a15">xpthread_mutex_unlock</a>(m)&nbsp;&nbsp;&nbsp;_UTIL_pthread_mutex(m, SPF_FALSE)</td></tr>
74
75 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a16">f_bit_set</a>(fl_bit_vector, bit)&nbsp;&nbsp;&nbsp;((int)((fl_bit_vector)&amp;(bit)))</td></tr>
76
77 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a17">urlchr_test</a>(c)&nbsp;&nbsp;&nbsp;(<a class="el" href="util_8h.html#a22">urlchr_table</a>[(unsigned char)(c)] &amp; 1)</td></tr>
78
79 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a18">DEBUG_LOG_FILE</a>&nbsp;&nbsp;&nbsp;"/var/log/spf.log"</td></tr>
80
81 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a19">OUTPUT_LOG_FILE</a>&nbsp;&nbsp;&nbsp;"/var/log/spflog.txt"</td></tr>
82
83 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a20">dbg_printf</a>&nbsp;&nbsp;&nbsp;_dummy_debug</td></tr>
84
85 <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a21">dbg_pprintf</a>&nbsp;&nbsp;&nbsp;_dummy_pdebug</td></tr>
86
87 <tr><td colspan=2><br><h2>Functions</h2></td></tr>
88 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a24">_printf_dbg</a> (const u_int8_t, const char *, const char *, const size_t, const char *,...)</td></tr>
89
90 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a25">_pprintf_dbg</a> (const u_int8_t, const char *, const char *, const size_t, const char *)</td></tr>
91
92 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a26">_dummy_debug</a> (const u_int8_t, const char *, const char *, const size_t, const char *,...)</td></tr>
93
94 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a27">_dummy_pdebug</a> (const u_int8_t, const char *, const char *, const size_t, const char *)</td></tr>
95
96 <tr><td class="memItemLeft" nowrap align=right valign=top>void *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a28">UTIL_malloc</a> (const int32_t, const char *, const int32_t, const char *)</td></tr>
97
98 <tr><td class="memItemLeft" nowrap align=right valign=top>void *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a29">UTIL_realloc</a> (void *, const int32_t, const char *, const int32_t, const char *)</td></tr>
99
100 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a30">UTIL_free</a> (void *, const char *, const int32_t, const char *)</td></tr>
101
102 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a31">UTIL_log_result</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *)</td></tr>
103
104 <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a32">UTIL_get_date</a> (void)</td></tr>
105
106 <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a33">UTIL_strndup</a> (const char *, const size_t)</td></tr>
107
108 <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a34">UTIL_strdup</a> (const char *)</td></tr>
109
110 <tr><td class="memItemLeft" nowrap align=right valign=top>int16_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a35">UTIL_index</a> (const char *, const char)</td></tr>
111
112 <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a36">UTIL_split_str</a> (const char *, const char, const u_int8_t)</td></tr>
113
114 <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a37">UTIL_split_strr</a> (const char *, const char, const u_int8_t)</td></tr>
115
116 <tr><td class="memItemLeft" nowrap align=right valign=top>u_int8_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a38">UTIL_count_delim</a> (const char *, const char)</td></tr>
117
118 <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_8h.html#a39">UTIL_is_spf_delim</a> (const char)</td></tr>
119
120 <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_8h.html#a40">UTIL_is_spf_result</a> (const char)</td></tr>
121
122 <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_8h.html#a41">UTIL_is_macro</a> (const char *)</td></tr>
123
124 <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_8h.html#a42">UTIL_mx_cmp</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *, const char *, const int8_t)</td></tr>
125
126 <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_8h.html#a43">UTIL_a_cmp</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *, const char *, const int8_t)</td></tr>
127
128 <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_8h.html#a44">UTIL_ptr_cmp</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *, const char *)</td></tr>
129
130 <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_8h.html#a45">UTIL_get_policy_mech</a> (const char *)</td></tr>
131
132 <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_8h.html#a46">UTIL_get_mech_prefix</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *, const char *)</td></tr>
133
134 <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_8h.html#a47">UTIL_assoc_prefix</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *, <a class="el" href="spf_8h.html#a36">SPF_RESULT</a>, const char *)</td></tr>
135
136 <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_8h.html#a48">UTIL_expand_ip</a> (const char *)</td></tr>
137
138 <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_8h.html#a49">UTIL_is_ip</a> (const char *)</td></tr>
139
140 <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a50">UTIL_rev_addr</a> (const char *)</td></tr>
141
142 <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a51">UTIL_get_dname</a> (const char *)</td></tr>
143
144 <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_8h.html#a52">UTIL_cidr_cmp</a> (const <a class="el" href="structpolicy__addr__s.html">policy_addr_t</a> *, const struct in_addr *)</td></tr>
145
146 <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_8h.html#a53">UTIL_validate_ptr</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *)</td></tr>
147
148 <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_8h.html#a54">UTIL_validate_hostname</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *, const char *, const int8_t)</td></tr>
149
150 <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a55">UTIL_url_encode</a> (const char *)</td></tr>
151
152 <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a56">UTIL_reverse</a> (const char *, const char)</td></tr>
153
154 <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_8h.html#a57">UTIL_addnode</a> (<a class="el" href="structsplit__str__s.html">split_str_t</a> *, const char *, <a class="el" href="spf_8h.html#a35">SPF_BOOL</a>)</td></tr>
155
156 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a58">_UTIL_pthread_mutex</a> (void *, <a class="el" href="spf_8h.html#a35">SPF_BOOL</a>)</td></tr>
157
158 <tr><td colspan=2><br><h2>Variables</h2></td></tr>
159 <tr><td class="memItemLeft" nowrap align=right valign=top>const u_char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a22">urlchr_table</a> [256]</td></tr>
160
161 <tr><td class="memItemLeft" nowrap align=right valign=top>void *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="util_8h.html#a23">util_mutex</a></td></tr>
162
163 </table>
164 <hr><h2>Define Documentation</h2>
165 <a class="anchor" name="a0" doxytag="util.h::_UTIL_H" ></a><p>
166 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
167 <tr>
168 <td class="mdRow">
169 <table cellpadding="0" cellspacing="0" border="0">
170 <tr>
171 <td class="md" nowrap valign="top"> #define _UTIL_H&nbsp;&nbsp;&nbsp;1 </td>
172 </tr>
173 </table>
174 </td>
175 </tr>
176 </table>
177 <table cellspacing=5 cellpadding=0 border=0>
178 <tr>
179 <td>
180 &nbsp;
181 </td>
182 <td>
183
184 <p>
185 Definition at line <a class="el" href="util_8h-source.html#l00047">47</a> of file <a class="el" href="util_8h-source.html">util.h</a>. </td>
186 </tr>
187 </table>
188 <a class="anchor" name="a21" doxytag="util.h::dbg_pprintf" ></a><p>
189 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
190 <tr>
191 <td class="mdRow">
192 <table cellpadding="0" cellspacing="0" border="0">
193 <tr>
194 <td class="md" nowrap valign="top"> #define dbg_pprintf&nbsp;&nbsp;&nbsp;_dummy_pdebug </td>
195 </tr>
196 </table>
197 </td>
198 </tr>
199 </table>
200 <table cellspacing=5 cellpadding=0 border=0>
201 <tr>
202 <td>
203 &nbsp;
204 </td>
205 <td>
206
207 <p>
208 Definition at line <a class="el" href="util_8h-source.html#l00222">222</a> of file <a class="el" href="util_8h-source.html">util.h</a>. </td>
209 </tr>
210 </table>
211 <a class="anchor" name="a20" doxytag="util.h::dbg_printf" ></a><p>
212 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
213 <tr>
214 <td class="mdRow">
215 <table cellpadding="0" cellspacing="0" border="0">
216 <tr>
217 <td class="md" nowrap valign="top"> #define dbg_printf&nbsp;&nbsp;&nbsp;_dummy_debug </td>
218 </tr>
219 </table>
220 </td>
221 </tr>
222 </table>
223 <table cellspacing=5 cellpadding=0 border=0>
224 <tr>
225 <td>
226 &nbsp;
227 </td>
228 <td>
229
230 <p>
231 Definition at line <a class="el" href="util_8h-source.html#l00221">221</a> of file <a class="el" href="util_8h-source.html">util.h</a>. </td>
232 </tr>
233 </table>
234 <a class="anchor" name="a18" doxytag="util.h::DEBUG_LOG_FILE" ></a><p>
235 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
236 <tr>
237 <td class="mdRow">
238 <table cellpadding="0" cellspacing="0" border="0">
239 <tr>
240 <td class="md" nowrap valign="top"> #define DEBUG_LOG_FILE&nbsp;&nbsp;&nbsp;"/var/log/spf.log" </td>
241 </tr>
242 </table>
243 </td>
244 </tr>
245 </table>
246 <table cellspacing=5 cellpadding=0 border=0>
247 <tr>
248 <td>
249 &nbsp;
250 </td>
251 <td>
252
253 <p>
254 Definition at line <a class="el" href="util_8h-source.html#l00210">210</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
255 <p>
256 Referenced by <a class="el" href="util_8c-source.html#l00154">_printf_dbg()</a>. </td>
257 </tr>
258 </table>
259 <a class="anchor" name="a16" doxytag="util.h::f_bit_set" ></a><p>
260 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
261 <tr>
262 <td class="mdRow">
263 <table cellpadding="0" cellspacing="0" border="0">
264 <tr>
265 <td class="md" nowrap valign="top"> #define f_bit_set </td>
266 <td class="md" valign="top">(&nbsp;</td>
267 <td class="md" nowrap valign="top">fl_bit_vector, <tr>
268 <td class="md" nowrap align="right"></td>
269 <td></td>
270 <td class="md" nowrap>bit&nbsp;</td>
271 <td class="mdname1" valign="top" nowrap> </td>
272 <td class="md" valign="top">&nbsp;)&nbsp;</td>
273 <td class="md" nowrap>&nbsp;&nbsp;&nbsp;((int)((fl_bit_vector)&amp;(bit)))</td>
274 </tr>
275 </table>
276 </td>
277 </tr>
278 </table>
279 <table cellspacing=5 cellpadding=0 border=0>
280 <tr>
281 <td>
282 &nbsp;
283 </td>
284 <td>
285
286 <p>
287 Definition at line <a class="el" href="util_8h-source.html#l00168">168</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
288 <p>
289 Referenced by <a class="el" href="util_8c-source.html#l00097">_pprintf_dbg()</a>, and <a class="el" href="util_8c-source.html#l00154">_printf_dbg()</a>. </td>
290 </tr>
291 </table>
292 <a class="anchor" name="a19" doxytag="util.h::OUTPUT_LOG_FILE" ></a><p>
293 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
294 <tr>
295 <td class="mdRow">
296 <table cellpadding="0" cellspacing="0" border="0">
297 <tr>
298 <td class="md" nowrap valign="top"> #define OUTPUT_LOG_FILE&nbsp;&nbsp;&nbsp;"/var/log/spflog.txt" </td>
299 </tr>
300 </table>
301 </td>
302 </tr>
303 </table>
304 <table cellspacing=5 cellpadding=0 border=0>
305 <tr>
306 <td>
307 &nbsp;
308 </td>
309 <td>
310
311 <p>
312 Definition at line <a class="el" href="util_8h-source.html#l00213">213</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
313 <p>
314 Referenced by <a class="el" href="util_8c-source.html#l00326">UTIL_log_result()</a>. </td>
315 </tr>
316 </table>
317 <a class="anchor" name="a3" doxytag="util.h::SIZEOF" ></a><p>
318 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
319 <tr>
320 <td class="mdRow">
321 <table cellpadding="0" cellspacing="0" border="0">
322 <tr>
323 <td class="md" nowrap valign="top"> #define SIZEOF </td>
324 <td class="md" valign="top">(&nbsp;</td>
325 <td class="md" nowrap valign="top">object&nbsp;</td>
326 <td class="mdname1" valign="top" nowrap> </td>
327 <td class="md" valign="top">&nbsp;)&nbsp;</td>
328 <td class="md" nowrap>&nbsp;&nbsp;&nbsp;((size_t) sizeof(object))</td>
329 </tr>
330 </table>
331 </td>
332 </tr>
333 </table>
334 <table cellspacing=5 cellpadding=0 border=0>
335 <tr>
336 <td>
337 &nbsp;
338 </td>
339 <td>
340
341 <p>
342 Definition at line <a class="el" href="util_8h-source.html#l00108">108</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
343 <p>
344 Referenced by <a class="el" href="macro_8c-source.html#l00638">MACRO_addbuf()</a>, <a class="el" href="macro_8c-source.html#l00071">MACRO_expand()</a>, <a class="el" href="main_8c-source.html#l00081">SPF_init()</a>, <a class="el" href="util_8c-source.html#l00980">UTIL_a_cmp()</a>, <a class="el" href="util_8c-source.html#l02421">UTIL_addnode()</a>, <a class="el" href="util_8c-source.html#l01694">UTIL_expand_ip()</a>, <a class="el" href="util_8c-source.html#l02331">UTIL_reverse()</a>, and <a class="el" href="util_8c-source.html#l02100">UTIL_validate_hostname()</a>. </td>
345 </tr>
346 </table>
347 <a class="anchor" name="a1" doxytag="util.h::SPF_MAX_DATETIME" ></a><p>
348 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
349 <tr>
350 <td class="mdRow">
351 <table cellpadding="0" cellspacing="0" border="0">
352 <tr>
353 <td class="md" nowrap valign="top"> #define SPF_MAX_DATETIME&nbsp;&nbsp;&nbsp;26 </td>
354 </tr>
355 </table>
356 </td>
357 </tr>
358 </table>
359 <table cellspacing=5 cellpadding=0 border=0>
360 <tr>
361 <td>
362 &nbsp;
363 </td>
364 <td>
365
366 <p>
367 Definition at line <a class="el" href="util_8h-source.html#l00095">95</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
368 <p>
369 Referenced by <a class="el" href="main_8c-source.html#l00081">SPF_init()</a>, and <a class="el" href="util_8c-source.html#l00282">UTIL_get_date()</a>. </td>
370 </tr>
371 </table>
372 <a class="anchor" name="a2" doxytag="util.h::SPF_MAX_GHBNR_DBUF" ></a><p>
373 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
374 <tr>
375 <td class="mdRow">
376 <table cellpadding="0" cellspacing="0" border="0">
377 <tr>
378 <td class="md" nowrap valign="top"> #define SPF_MAX_GHBNR_DBUF&nbsp;&nbsp;&nbsp;2048 </td>
379 </tr>
380 </table>
381 </td>
382 </tr>
383 </table>
384 <table cellspacing=5 cellpadding=0 border=0>
385 <tr>
386 <td>
387 &nbsp;
388 </td>
389 <td>
390
391 <p>
392 Definition at line <a class="el" href="util_8h-source.html#l00098">98</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
393 <p>
394 Referenced by <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>
395 </tr>
396 </table>
397 <a class="anchor" name="a17" doxytag="util.h::urlchr_test" ></a><p>
398 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
399 <tr>
400 <td class="mdRow">
401 <table cellpadding="0" cellspacing="0" border="0">
402 <tr>
403 <td class="md" nowrap valign="top"> #define urlchr_test </td>
404 <td class="md" valign="top">(&nbsp;</td>
405 <td class="md" nowrap valign="top">c&nbsp;</td>
406 <td class="mdname1" valign="top" nowrap> </td>
407 <td class="md" valign="top">&nbsp;)&nbsp;</td>
408 <td class="md" nowrap>&nbsp;&nbsp;&nbsp;(<a class="el" href="util_8h.html#a22">urlchr_table</a>[(unsigned char)(c)] &amp; 1)</td>
409 </tr>
410 </table>
411 </td>
412 </tr>
413 </table>
414 <table cellspacing=5 cellpadding=0 border=0>
415 <tr>
416 <td>
417 &nbsp;
418 </td>
419 <td>
420
421 <p>
422 Definition at line <a class="el" href="util_8h-source.html#l00171">171</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
423 <p>
424 Referenced by <a class="el" href="util_8c-source.html#l02272">UTIL_url_encode()</a>. </td>
425 </tr>
426 </table>
427 <a class="anchor" name="a13" doxytag="util.h::xepprintf" ></a><p>
428 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
429 <tr>
430 <td class="mdRow">
431 <table cellpadding="0" cellspacing="0" border="0">
432 <tr>
433 <td class="md" nowrap valign="top"> #define xepprintf </td>
434 <td class="md" valign="top">(&nbsp;</td>
435 <td class="md" nowrap valign="top">s&nbsp;</td>
436 <td class="mdname1" valign="top" nowrap> </td>
437 <td class="md" valign="top">&nbsp;)&nbsp;</td>
438 <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbg_pprintf(FL_F, __FUNCTION__, __FILE__, __LINE__, s)</td>
439 </tr>
440 </table>
441 </td>
442 </tr>
443 </table>
444 <table cellspacing=5 cellpadding=0 border=0>
445 <tr>
446 <td>
447 &nbsp;
448 </td>
449 <td>
450
451 <p>
452 Definition at line <a class="el" href="util_8h-source.html#l00154">154</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
453 <p>
454 Referenced by <a class="el" href="main_8c-source.html#l01564">_SPF_clear_holdbufs()</a>, <a class="el" href="dns_8c-source.html#l00975">DNS_check_client_reverse()</a>, <a class="el" href="dns_8c-source.html#l00866">DNS_cname_answer()</a>, <a class="el" href="dns_8c-source.html#l00716">DNS_ptr_answer()</a>, <a class="el" href="dns_8c-source.html#l00217">DNS_query()</a>, <a class="el" href="dns_8c-source.html#l00419">DNS_txt_answer()</a>, <a class="el" href="macro_8c-source.html#l00638">MACRO_addbuf()</a>, <a class="el" href="macro_8c-source.html#l00505">MACRO_eatmore()</a>, <a class="el" href="macro_8c-source.html#l00071">MACRO_expand()</a>, <a class="el" href="macro_8c-source.html#l00301">MACRO_process()</a>, <a class="el" href="main_8c-source.html#l00313">SPF_close()</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#l02421">UTIL_addnode()</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#l00751">UTIL_count_delim()</a>, <a class="el" href="util_8c-source.html#l01694">UTIL_expand_ip()</a>, <a class="el" href="util_8c-source.html#l01906">UTIL_get_dname()</a>, <a class="el" href="util_8c-source.html#l01555">UTIL_get_mech_prefix()</a>, <a class="el" href="util_8c-source.html#l01198">UTIL_get_policy_mech()</a>, <a class="el" href="util_8c-source.html#l00564">UTIL_index()</a>, <a class="el" href="util_8c-source.html#l01793">UTIL_is_ip()</a>, <a class="el" href="util_8c-source.html#l00869">UTIL_is_macro()</a>, <a class="el" href="util_8c-source.html#l00790">UTIL_is_spf_delim()</a>, <a class="el" href="util_8c-source.html#l01135">UTIL_ptr_cmp()</a>, <a class="el" href="util_8c-source.html#l01843">UTIL_rev_addr()</a>, <a class="el" href="util_8c-source.html#l02331">UTIL_reverse()</a>, <a class="el" href="util_8c-source.html#l00615">UTIL_split_str()</a>, <a class="el" href="util_8c-source.html#l00684">UTIL_split_strr()</a>, <a class="el" href="util_8c-source.html#l00412">UTIL_strdup()</a>, <a class="el" href="util_8c-source.html#l00378">UTIL_strndup()</a>, <a class="el" href="util_8c-source.html#l02272">UTIL_url_encode()</a>, <a class="el" href="util_8c-source.html#l02100">UTIL_validate_hostname()</a>, and <a class="el" href="util_8c-source.html#l02038">UTIL_validate_ptr()</a>. </td>
455 </tr>
456 </table>
457 <a class="anchor" name="a12" doxytag="util.h::xeprintf" ></a><p>
458 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
459 <tr>
460 <td class="mdRow">
461 <table cellpadding="0" cellspacing="0" border="0">
462 <tr>
463 <td class="md" nowrap valign="top"> #define xeprintf </td>
464 <td class="md" valign="top">(&nbsp;</td>
465 <td class="md" nowrap valign="top">format&nbsp;</td>
466 <td class="mdname1" valign="top" nowrap> </td>
467 <td class="md" valign="top">&nbsp;)&nbsp;</td>
468 <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbg_printf(FL_E, __FUNCTION__, __FILE__, __LINE__, format, __VA_ARGS__)</td>
469 </tr>
470 </table>
471 </td>
472 </tr>
473 </table>
474 <table cellspacing=5 cellpadding=0 border=0>
475 <tr>
476 <td>
477 &nbsp;
478 </td>
479 <td>
480
481 <p>
482 Definition at line <a class="el" href="util_8h-source.html#l00150">150</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
483 <p>
484 Referenced by <a class="el" href="dns_8c-source.html#l00975">DNS_check_client_reverse()</a>, and <a class="el" href="util_8c-source.html#l00980">UTIL_a_cmp()</a>. </td>
485 </tr>
486 </table>
487 <a class="anchor" name="a6" doxytag="util.h::xfree" ></a><p>
488 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
489 <tr>
490 <td class="mdRow">
491 <table cellpadding="0" cellspacing="0" border="0">
492 <tr>
493 <td class="md" nowrap valign="top"> #define xfree </td>
494 <td class="md" valign="top">(&nbsp;</td>
495 <td class="md" nowrap valign="top">m&nbsp;</td>
496 <td class="mdname1" valign="top" nowrap> </td>
497 <td class="md" valign="top">&nbsp;)&nbsp;</td>
498 <td class="md" nowrap>&nbsp;&nbsp;&nbsp;UTIL_free(m, __FILE__, __LINE__, __FUNCTION__)</td>
499 </tr>
500 </table>
501 </td>
502 </tr>
503 </table>
504 <table cellspacing=5 cellpadding=0 border=0>
505 <tr>
506 <td>
507 &nbsp;
508 </td>
509 <td>
510
511 <p>
512 Definition at line <a class="el" href="util_8h-source.html#l00127">127</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
513 <p>
514 Referenced by <a class="el" href="util_8c-source.html#l00097">_pprintf_dbg()</a>, <a class="el" href="main_8c-source.html#l01564">_SPF_clear_holdbufs()</a>, <a class="el" href="dns_8c-source.html#l00975">DNS_check_client_reverse()</a>, <a class="el" href="dns_8c-source.html#l00419">DNS_txt_answer()</a>, <a class="el" href="macro_8c-source.html#l00505">MACRO_eatmore()</a>, <a class="el" href="macro_8c-source.html#l00071">MACRO_expand()</a>, <a class="el" href="macro_8c-source.html#l00301">MACRO_process()</a>, <a class="el" href="main_8c-source.html#l00313">SPF_close()</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#l00570">SPF_policy_main_rec()</a>, <a class="el" href="main_8c-source.html#l01456">SPF_smtp_from()</a>, <a class="el" href="main_8c-source.html#l01423">SPF_smtp_helo()</a>, <a class="el" href="util_8c-source.html#l00980">UTIL_a_cmp()</a>, <a class="el" href="util_8c-source.html#l01961">UTIL_cidr_cmp()</a>, <a class="el" href="util_8c-source.html#l01694">UTIL_expand_ip()</a>, <a class="el" href="util_8c-source.html#l00326">UTIL_log_result()</a>, <a class="el" href="util_8c-source.html#l00914">UTIL_mx_cmp()</a>, <a class="el" href="util_8c-source.html#l01135">UTIL_ptr_cmp()</a>, <a class="el" href="util_8c-source.html#l01843">UTIL_rev_addr()</a>, <a class="el" href="util_8c-source.html#l02331">UTIL_reverse()</a>, <a class="el" href="util_8c-source.html#l00615">UTIL_split_str()</a>, <a class="el" href="util_8c-source.html#l02100">UTIL_validate_hostname()</a>, and <a class="el" href="util_8c-source.html#l02038">UTIL_validate_ptr()</a>. </td>
515 </tr>
516 </table>
517 <a class="anchor" name="a4" doxytag="util.h::xmalloc" ></a><p>
518 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
519 <tr>
520 <td class="mdRow">
521 <table cellpadding="0" cellspacing="0" border="0">
522 <tr>
523 <td class="md" nowrap valign="top"> #define xmalloc </td>
524 <td class="md" valign="top">(&nbsp;</td>
525 <td class="md" nowrap valign="top">n&nbsp;</td>
526 <td class="mdname1" valign="top" nowrap> </td>
527 <td class="md" valign="top">&nbsp;)&nbsp;</td>
528 <td class="md" nowrap>&nbsp;&nbsp;&nbsp;UTIL_malloc(n, __FILE__, __LINE__, __FUNCTION__)</td>
529 </tr>
530 </table>
531 </td>
532 </tr>
533 </table>
534 <table cellspacing=5 cellpadding=0 border=0>
535 <tr>
536 <td>
537 &nbsp;
538 </td>
539 <td>
540
541 <p>
542 Definition at line <a class="el" href="util_8h-source.html#l00125">125</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
543 <p>
544 Referenced by <a class="el" href="util_8c-source.html#l00097">_pprintf_dbg()</a>, <a class="el" href="util_8c-source.html#l00154">_printf_dbg()</a>, <a class="el" href="dns_8c-source.html#l00866">DNS_cname_answer()</a>, <a class="el" href="dns_8c-source.html#l00611">DNS_mx_answer()</a>, <a class="el" href="dns_8c-source.html#l00419">DNS_txt_answer()</a>, <a class="el" href="macro_8c-source.html#l00638">MACRO_addbuf()</a>, <a class="el" href="macro_8c-source.html#l00505">MACRO_eatmore()</a>, <a class="el" href="macro_8c-source.html#l00071">MACRO_expand()</a>, <a class="el" href="macro_8c-source.html#l00301">MACRO_process()</a>, <a class="el" href="main_8c-source.html#l01342">SPF_build_header()</a>, <a class="el" href="main_8c-source.html#l00081">SPF_init()</a>, <a class="el" href="main_8c-source.html#l01249">SPF_result()</a>, <a class="el" href="util_8c-source.html#l00980">UTIL_a_cmp()</a>, <a class="el" href="util_8c-source.html#l02421">UTIL_addnode()</a>, <a class="el" href="util_8c-source.html#l01694">UTIL_expand_ip()</a>, <a class="el" href="util_8c-source.html#l00282">UTIL_get_date()</a>, <a class="el" href="util_8c-source.html#l00326">UTIL_log_result()</a>, <a class="el" href="util_8c-source.html#l01843">UTIL_rev_addr()</a>, <a class="el" href="util_8c-source.html#l02331">UTIL_reverse()</a>, <a class="el" href="util_8c-source.html#l00378">UTIL_strndup()</a>, <a class="el" href="util_8c-source.html#l02272">UTIL_url_encode()</a>, and <a class="el" href="util_8c-source.html#l02100">UTIL_validate_hostname()</a>. </td>
545 </tr>
546 </table>
547 <a class="anchor" name="a11" doxytag="util.h::xpprintf" ></a><p>
548 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
549 <tr>
550 <td class="mdRow">
551 <table cellpadding="0" cellspacing="0" border="0">
552 <tr>
553 <td class="md" nowrap valign="top"> #define xpprintf </td>
554 <td class="md" valign="top">(&nbsp;</td>
555 <td class="md" nowrap valign="top">s&nbsp;</td>
556 <td class="mdname1" valign="top" nowrap> </td>
557 <td class="md" valign="top">&nbsp;)&nbsp;</td>
558 <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbg_pprintf(FL_D, __FUNCTION__, __FILE__, __LINE__, s)</td>
559 </tr>
560 </table>
561 </td>
562 </tr>
563 </table>
564 <table cellspacing=5 cellpadding=0 border=0>
565 <tr>
566 <td>
567 &nbsp;
568 </td>
569 <td>
570
571 <p>
572 Definition at line <a class="el" href="util_8h-source.html#l00146">146</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
573 <p>
574 Referenced by <a class="el" href="dns_8c-source.html#l00975">DNS_check_client_reverse()</a>, <a class="el" href="dns_8c-source.html#l00866">DNS_cname_answer()</a>, <a class="el" href="dns_8c-source.html#l00419">DNS_txt_answer()</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#l02421">UTIL_addnode()</a>, <a class="el" href="util_8c-source.html#l01198">UTIL_get_policy_mech()</a>, <a class="el" href="util_8c-source.html#l00564">UTIL_index()</a>, <a class="el" href="util_8c-source.html#l01793">UTIL_is_ip()</a>, <a class="el" href="util_8c-source.html#l00869">UTIL_is_macro()</a>, <a class="el" href="util_8c-source.html#l00790">UTIL_is_spf_delim()</a>, <a class="el" href="util_8c-source.html#l00832">UTIL_is_spf_result()</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>. </td>
575 </tr>
576 </table>
577 <a class="anchor" name="a9" doxytag="util.h::xprintf" ></a><p>
578 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
579 <tr>
580 <td class="mdRow">
581 <table cellpadding="0" cellspacing="0" border="0">
582 <tr>
583 <td class="md" nowrap valign="top"> #define xprintf </td>
584 <td class="md" valign="top">(&nbsp;</td>
585 <td class="md" nowrap valign="top">format&nbsp;</td>
586 <td class="mdname1" valign="top" nowrap> </td>
587 <td class="md" valign="top">&nbsp;)&nbsp;</td>
588 <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbg_printf(FL_A, __FUNCTION__, __FILE__, __LINE__, format, __VA_ARGS__)</td>
589 </tr>
590 </table>
591 </td>
592 </tr>
593 </table>
594 <table cellspacing=5 cellpadding=0 border=0>
595 <tr>
596 <td>
597 &nbsp;
598 </td>
599 <td>
600
601 <p>
602 Definition at line <a class="el" href="util_8h-source.html#l00138">138</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
603 <p>
604 Referenced by <a class="el" href="dns_8c-source.html#l00611">DNS_mx_answer()</a>, <a class="el" href="dns_8c-source.html#l00217">DNS_query()</a>, <a class="el" href="macro_8c-source.html#l00505">MACRO_eatmore()</a>, <a class="el" href="macro_8c-source.html#l00071">MACRO_expand()</a>, <a class="el" href="macro_8c-source.html#l00301">MACRO_process()</a>, <a class="el" href="main_8c-source.html#l01310">SPF_get_explain()</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#l00570">SPF_policy_main_rec()</a>, <a class="el" href="main_8c-source.html#l01249">SPF_result()</a>, <a class="el" href="main_8c-source.html#l01456">SPF_smtp_from()</a>, <a class="el" href="main_8c-source.html#l01423">SPF_smtp_helo()</a>, <a class="el" href="util_8c-source.html#l01906">UTIL_get_dname()</a>, <a class="el" href="util_8c-source.html#l01555">UTIL_get_mech_prefix()</a>, and <a class="el" href="util_8c-source.html#l01843">UTIL_rev_addr()</a>. </td>
605 </tr>
606 </table>
607 <a class="anchor" name="a14" doxytag="util.h::xpthread_mutex_lock" ></a><p>
608 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
609 <tr>
610 <td class="mdRow">
611 <table cellpadding="0" cellspacing="0" border="0">
612 <tr>
613 <td class="md" nowrap valign="top"> #define xpthread_mutex_lock </td>
614 <td class="md" valign="top">(&nbsp;</td>
615 <td class="md" nowrap valign="top">m&nbsp;</td>
616 <td class="mdname1" valign="top" nowrap> </td>
617 <td class="md" valign="top">&nbsp;)&nbsp;</td>
618 <td class="md" nowrap>&nbsp;&nbsp;&nbsp;_UTIL_pthread_mutex(m, SPF_TRUE)</td>
619 </tr>
620 </table>
621 </td>
622 </tr>
623 </table>
624 <table cellspacing=5 cellpadding=0 border=0>
625 <tr>
626 <td>
627 &nbsp;
628 </td>
629 <td>
630
631 <p>
632 Definition at line <a class="el" href="util_8h-source.html#l00163">163</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
633 <p>
634 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>
635 </tr>
636 </table>
637 <a class="anchor" name="a15" doxytag="util.h::xpthread_mutex_unlock" ></a><p>
638 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
639 <tr>
640 <td class="mdRow">
641 <table cellpadding="0" cellspacing="0" border="0">
642 <tr>
643 <td class="md" nowrap valign="top"> #define xpthread_mutex_unlock </td>
644 <td class="md" valign="top">(&nbsp;</td>
645 <td class="md" nowrap valign="top">m&nbsp;</td>
646 <td class="mdname1" valign="top" nowrap> </td>
647 <td class="md" valign="top">&nbsp;)&nbsp;</td>
648 <td class="md" nowrap>&nbsp;&nbsp;&nbsp;_UTIL_pthread_mutex(m, SPF_FALSE)</td>
649 </tr>
650 </table>
651 </td>
652 </tr>
653 </table>
654 <table cellspacing=5 cellpadding=0 border=0>
655 <tr>
656 <td>
657 &nbsp;
658 </td>
659 <td>
660
661 <p>
662 Definition at line <a class="el" href="util_8h-source.html#l00164">164</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
663 <p>
664 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>
665 </tr>
666 </table>
667 <a class="anchor" name="a5" doxytag="util.h::xrealloc" ></a><p>
668 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
669 <tr>
670 <td class="mdRow">
671 <table cellpadding="0" cellspacing="0" border="0">
672 <tr>
673 <td class="md" nowrap valign="top"> #define xrealloc </td>
674 <td class="md" valign="top">(&nbsp;</td>
675 <td class="md" nowrap valign="top">m, <tr>
676 <td class="md" nowrap align="right"></td>
677 <td></td>
678 <td class="md" nowrap>n&nbsp;</td>
679 <td class="mdname1" valign="top" nowrap> </td>
680 <td class="md" valign="top">&nbsp;)&nbsp;</td>
681 <td class="md" nowrap>&nbsp;&nbsp;&nbsp;UTIL_realloc(m, n, __FILE__, __LINE__, __FUNCTION__)</td>
682 </tr>
683 </table>
684 </td>
685 </tr>
686 </table>
687 <table cellspacing=5 cellpadding=0 border=0>
688 <tr>
689 <td>
690 &nbsp;
691 </td>
692 <td>
693
694 <p>
695 Definition at line <a class="el" href="util_8h-source.html#l00126">126</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
696 <p>
697 Referenced by <a class="el" href="dns_8c-source.html#l00866">DNS_cname_answer()</a>, <a class="el" href="dns_8c-source.html#l00611">DNS_mx_answer()</a>, and <a class="el" href="dns_8c-source.html#l00419">DNS_txt_answer()</a>. </td>
698 </tr>
699 </table>
700 <a class="anchor" name="a7" doxytag="util.h::xstrdup" ></a><p>
701 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
702 <tr>
703 <td class="mdRow">
704 <table cellpadding="0" cellspacing="0" border="0">
705 <tr>
706 <td class="md" nowrap valign="top"> #define xstrdup </td>
707 <td class="md" valign="top">(&nbsp;</td>
708 <td class="md" nowrap valign="top">m&nbsp;</td>
709 <td class="mdname1" valign="top" nowrap> </td>
710 <td class="md" valign="top">&nbsp;)&nbsp;</td>
711 <td class="md" nowrap>&nbsp;&nbsp;&nbsp;UTIL_strdup(m)</td>
712 </tr>
713 </table>
714 </td>
715 </tr>
716 </table>
717 <table cellspacing=5 cellpadding=0 border=0>
718 <tr>
719 <td>
720 &nbsp;
721 </td>
722 <td>
723
724 <p>
725 Definition at line <a class="el" href="util_8h-source.html#l00128">128</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
726 <p>
727 Referenced by <a class="el" href="main_8c-source.html#l01423">SPF_smtp_helo()</a>, and <a class="el" href="util_8c-source.html#l00684">UTIL_split_strr()</a>. </td>
728 </tr>
729 </table>
730 <a class="anchor" name="a8" doxytag="util.h::xstrndup" ></a><p>
731 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
732 <tr>
733 <td class="mdRow">
734 <table cellpadding="0" cellspacing="0" border="0">
735 <tr>
736 <td class="md" nowrap valign="top"> #define xstrndup </td>
737 <td class="md" valign="top">(&nbsp;</td>
738 <td class="md" nowrap valign="top">m, <tr>
739 <td class="md" nowrap align="right"></td>
740 <td></td>
741 <td class="md" nowrap>n&nbsp;</td>
742 <td class="mdname1" valign="top" nowrap> </td>
743 <td class="md" valign="top">&nbsp;)&nbsp;</td>
744 <td class="md" nowrap>&nbsp;&nbsp;&nbsp;UTIL_strndup(m, n)</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_8h-source.html#l00129">129</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
759 <p>
760 Referenced by <a class="el" href="dns_8c-source.html#l00975">DNS_check_client_reverse()</a>, <a class="el" href="dns_8c-source.html#l00419">DNS_txt_answer()</a>, <a class="el" href="macro_8c-source.html#l00505">MACRO_eatmore()</a>, <a class="el" href="macro_8c-source.html#l00071">MACRO_expand()</a>, <a class="el" href="macro_8c-source.html#l00301">MACRO_process()</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#l01456">SPF_smtp_from()</a>, <a class="el" href="util_8c-source.html#l00980">UTIL_a_cmp()</a>, <a class="el" href="util_8c-source.html#l01961">UTIL_cidr_cmp()</a>, <a class="el" href="util_8c-source.html#l01694">UTIL_expand_ip()</a>, <a class="el" href="util_8c-source.html#l01906">UTIL_get_dname()</a>, <a class="el" href="util_8c-source.html#l00914">UTIL_mx_cmp()</a>, <a class="el" href="util_8c-source.html#l01135">UTIL_ptr_cmp()</a>, <a class="el" href="util_8c-source.html#l01843">UTIL_rev_addr()</a>, <a class="el" href="util_8c-source.html#l02331">UTIL_reverse()</a>, <a class="el" href="util_8c-source.html#l00615">UTIL_split_str()</a>, <a class="el" href="util_8c-source.html#l02100">UTIL_validate_hostname()</a>, and <a class="el" href="util_8c-source.html#l02038">UTIL_validate_ptr()</a>. </td>
761 </tr>
762 </table>
763 <a class="anchor" name="a10" doxytag="util.h::xvprintf" ></a><p>
764 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
765 <tr>
766 <td class="mdRow">
767 <table cellpadding="0" cellspacing="0" border="0">
768 <tr>
769 <td class="md" nowrap valign="top"> #define xvprintf </td>
770 <td class="md" valign="top">(&nbsp;</td>
771 <td class="md" nowrap valign="top">format&nbsp;</td>
772 <td class="mdname1" valign="top" nowrap> </td>
773 <td class="md" valign="top">&nbsp;)&nbsp;</td>
774 <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbg_printf(FL_B, __FUNCTION__, __FILE__, __LINE__, format, __VA_ARGS__)</td>
775 </tr>
776 </table>
777 </td>
778 </tr>
779 </table>
780 <table cellspacing=5 cellpadding=0 border=0>
781 <tr>
782 <td>
783 &nbsp;
784 </td>
785 <td>
786
787 <p>
788 Definition at line <a class="el" href="util_8h-source.html#l00142">142</a> of file <a class="el" href="util_8h-source.html">util.h</a>.
789 <p>
790 Referenced by <a class="el" href="dns_8c-source.html#l00975">DNS_check_client_reverse()</a>, <a class="el" href="dns_8c-source.html#l00866">DNS_cname_answer()</a>, <a class="el" href="dns_8c-source.html#l00611">DNS_mx_answer()</a>, <a class="el" href="dns_8c-source.html#l00716">DNS_ptr_answer()</a>, <a class="el" href="dns_8c-source.html#l00217">DNS_query()</a>, <a class="el" href="dns_8c-source.html#l00419">DNS_txt_answer()</a>, <a class="el" href="macro_8c-source.html#l00638">MACRO_addbuf()</a>, <a class="el" href="macro_8c-source.html#l00505">MACRO_eatmore()</a>, <a class="el" href="macro_8c-source.html#l00071">MACRO_expand()</a>, <a class="el" href="macro_8c-source.html#l00301">MACRO_process()</a>, <a class="el" href="main_8c-source.html#l01342">SPF_build_header()</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="main_8c-source.html#l01456">SPF_smtp_from()</a>, <a class="el" href="util_8c-source.html#l00980">UTIL_a_cmp()</a>, <a class="el" href="util_8c-source.html#l02421">UTIL_addnode()</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#l00751">UTIL_count_delim()</a>, <a class="el" href="util_8c-source.html#l01694">UTIL_expand_ip()</a>, <a class="el" href="util_8c-source.html#l00522">UTIL_free()</a>, <a class="el" href="util_8c-source.html#l01906">UTIL_get_dname()</a>, <a class="el" href="util_8c-source.html#l01555">UTIL_get_mech_prefix()</a>, <a class="el" href="util_8c-source.html#l01198">UTIL_get_policy_mech()</a>, <a class="el" href="util_8c-source.html#l00564">UTIL_index()</a>, <a class="el" href="util_8c-source.html#l01793">UTIL_is_ip()</a>, <a class="el" href="util_8c-source.html#l00869">UTIL_is_macro()</a>, <a class="el" href="util_8c-source.html#l00790">UTIL_is_spf_delim()</a>, <a class="el" href="util_8c-source.html#l00832">UTIL_is_spf_result()</a>, <a class="el" href="util_8c-source.html#l00447">UTIL_malloc()</a>, <a class="el" href="util_8c-source.html#l00914">UTIL_mx_cmp()</a>, <a class="el" href="util_8c-source.html#l01135">UTIL_ptr_cmp()</a>, <a class="el" href="util_8c-source.html#l00486">UTIL_realloc()</a>, <a class="el" href="util_8c-source.html#l01843">UTIL_rev_addr()</a>, <a class="el" href="util_8c-source.html#l02331">UTIL_reverse()</a>, <a class="el" href="util_8c-source.html#l00615">UTIL_split_str()</a>, <a class="el" href="util_8c-source.html#l00684">UTIL_split_strr()</a>, <a class="el" href="util_8c-source.html#l00412">UTIL_strdup()</a>, <a class="el" href="util_8c-source.html#l00378">UTIL_strndup()</a>, <a class="el" href="util_8c-source.html#l02272">UTIL_url_encode()</a>, <a class="el" href="util_8c-source.html#l02100">UTIL_validate_hostname()</a>, and <a class="el" href="util_8c-source.html#l02038">UTIL_validate_ptr()</a>. </td>
791 </tr>
792 </table>
793 <hr><h2>Function Documentation</h2>
794 <a class="anchor" name="a26" doxytag="util.h::_dummy_debug" ></a><p>
795 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
796 <tr>
797 <td class="mdRow">
798 <table cellpadding="0" cellspacing="0" border="0">
799 <tr>
800 <td class="md" nowrap valign="top"> void _dummy_debug </td>
801 <td class="md" valign="top">(&nbsp;</td>
802 <td class="md" nowrap valign="top">const&nbsp;</td>
803 <td class="mdname" nowrap> <em>u_int8_t</em>, </td>
804 </tr>
805 <tr>
806 <td class="md" nowrap align="right"></td>
807 <td></td>
808 <td class="md" nowrap>const char *&nbsp;</td>
809 <td class="mdname" nowrap>, </td>
810 </tr>
811 <tr>
812 <td class="md" nowrap align="right"></td>
813 <td></td>
814 <td class="md" nowrap>const char *&nbsp;</td>
815 <td class="mdname" nowrap>, </td>
816 </tr>
817 <tr>
818 <td class="md" nowrap align="right"></td>
819 <td></td>
820 <td class="md" nowrap>const&nbsp;</td>
821 <td class="mdname" nowrap> <em>size_t</em>, </td>
822 </tr>
823 <tr>
824 <td class="md" nowrap align="right"></td>
825 <td></td>
826 <td class="md" nowrap>const char *&nbsp;</td>
827 <td class="mdname" nowrap>, </td>
828 </tr>
829 <tr>
830 <td class="md" nowrap align="right"></td>
831 <td></td>
832 <td class="md" nowrap>&nbsp;</td>
833 <td class="mdname" nowrap> <em>...</em></td>
834 </tr>
835 <tr>
836 <td></td>
837 <td class="md">)&nbsp;</td>
838 <td class="md" colspan="2"></td>
839 </tr>
840 </table>
841 </td>
842 </tr>
843 </table>
844 <table cellspacing=5 cellpadding=0 border=0>
845 <tr>
846 <td>
847 &nbsp;
848 </td>
849 <td>
850
851 <p>
852 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>
853 </tr>
854 </table>
855 <a class="anchor" name="a27" doxytag="util.h::_dummy_pdebug" ></a><p>
856 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
857 <tr>
858 <td class="mdRow">
859 <table cellpadding="0" cellspacing="0" border="0">
860 <tr>
861 <td class="md" nowrap valign="top"> void _dummy_pdebug </td>
862 <td class="md" valign="top">(&nbsp;</td>
863 <td class="md" nowrap valign="top">const&nbsp;</td>
864 <td class="mdname" nowrap> <em>u_int8_t</em>, </td>
865 </tr>
866 <tr>
867 <td class="md" nowrap align="right"></td>
868 <td></td>
869 <td class="md" nowrap>const char *&nbsp;</td>
870 <td class="mdname" nowrap>, </td>
871 </tr>
872 <tr>
873 <td class="md" nowrap align="right"></td>
874 <td></td>
875 <td class="md" nowrap>const char *&nbsp;</td>
876 <td class="mdname" nowrap>, </td>
877 </tr>
878 <tr>
879 <td class="md" nowrap align="right"></td>
880 <td></td>
881 <td class="md" nowrap>const&nbsp;</td>
882 <td class="mdname" nowrap> <em>size_t</em>, </td>
883 </tr>
884 <tr>
885 <td class="md" nowrap align="right"></td>
886 <td></td>
887 <td class="md" nowrap>const char *&nbsp;</td>
888 <td class="mdname" nowrap></td>
889 </tr>
890 <tr>
891 <td></td>
892 <td class="md">)&nbsp;</td>
893 <td class="md" colspan="2"></td>
894 </tr>
895 </table>
896 </td>
897 </tr>
898 </table>
899 <table cellspacing=5 cellpadding=0 border=0>
900 <tr>
901 <td>
902 &nbsp;
903 </td>
904 <td>
905
906 <p>
907 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>
908 </tr>
909 </table>
910 <a class="anchor" name="a25" doxytag="util.h::_pprintf_dbg" ></a><p>
911 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
912 <tr>
913 <td class="mdRow">
914 <table cellpadding="0" cellspacing="0" border="0">
915 <tr>
916 <td class="md" nowrap valign="top"> void _pprintf_dbg </td>
917 <td class="md" valign="top">(&nbsp;</td>
918 <td class="md" nowrap valign="top">const&nbsp;</td>
919 <td class="mdname" nowrap> <em>u_int8_t</em>, </td>
920 </tr>
921 <tr>
922 <td class="md" nowrap align="right"></td>
923 <td></td>
924 <td class="md" nowrap>const char *&nbsp;</td>
925 <td class="mdname" nowrap>, </td>
926 </tr>
927 <tr>
928 <td class="md" nowrap align="right"></td>
929 <td></td>
930 <td class="md" nowrap>const char *&nbsp;</td>
931 <td class="mdname" nowrap>, </td>
932 </tr>
933 <tr>
934 <td class="md" nowrap align="right"></td>
935 <td></td>
936 <td class="md" nowrap>const&nbsp;</td>
937 <td class="mdname" nowrap> <em>size_t</em>, </td>
938 </tr>
939 <tr>
940 <td class="md" nowrap align="right"></td>
941 <td></td>
942 <td class="md" nowrap>const char *&nbsp;</td>
943 <td class="mdname" nowrap></td>
944 </tr>
945 <tr>
946 <td></td>
947 <td class="md">)&nbsp;</td>
948 <td class="md" colspan="2"></td>
949 </tr>
950 </table>
951 </td>
952 </tr>
953 </table>
954 <table cellspacing=5 cellpadding=0 border=0>
955 <tr>
956 <td>
957 &nbsp;
958 </td>
959 <td>
960
961 <p>
962 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>.
963 <p>
964 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>
965 </tr>
966 </table>
967 <a class="anchor" name="a24" doxytag="util.h::_printf_dbg" ></a><p>
968 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
969 <tr>
970 <td class="mdRow">
971 <table cellpadding="0" cellspacing="0" border="0">
972 <tr>
973 <td class="md" nowrap valign="top"> void _printf_dbg </td>
974 <td class="md" valign="top">(&nbsp;</td>
975 <td class="md" nowrap valign="top">const&nbsp;</td>
976 <td class="mdname" nowrap> <em>u_int8_t</em>, </td>
977 </tr>
978 <tr>
979 <td class="md" nowrap align="right"></td>
980 <td></td>
981 <td class="md" nowrap>const char *&nbsp;</td>
982 <td class="mdname" nowrap>, </td>
983 </tr>
984 <tr>
985 <td class="md" nowrap align="right"></td>
986 <td></td>
987 <td class="md" nowrap>const char *&nbsp;</td>
988 <td class="mdname" nowrap>, </td>
989 </tr>
990 <tr>
991 <td class="md" nowrap align="right"></td>
992 <td></td>
993 <td class="md" nowrap>const&nbsp;</td>
994 <td class="mdname" nowrap> <em>size_t</em>, </td>
995 </tr>
996 <tr>
997 <td class="md" nowrap align="right"></td>
998 <td></td>
999 <td class="md" nowrap>const char *&nbsp;</td>
1000 <td class="mdname" nowrap>, </td>
1001 </tr>
1002 <tr>
1003 <td class="md" nowrap align="right"></td>
1004 <td></td>
1005 <td class="md" nowrap>&nbsp;</td>
1006 <td class="mdname" nowrap> <em>...</em></td>
1007 </tr>
1008 <tr>
1009 <td></td>
1010 <td class="md">)&nbsp;</td>
1011 <td class="md" colspan="2"></td>
1012 </tr>
1013 </table>
1014 </td>
1015 </tr>
1016 </table>
1017 <table cellspacing=5 cellpadding=0 border=0>
1018 <tr>
1019 <td>
1020 &nbsp;
1021 </td>
1022 <td>
1023
1024 <p>
1025 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>.
1026 <p>
1027 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>
1028 </tr>
1029 </table>
1030 <a class="anchor" name="a58" doxytag="util.h::_UTIL_pthread_mutex" ></a><p>
1031 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1032 <tr>
1033 <td class="mdRow">
1034 <table cellpadding="0" cellspacing="0" border="0">
1035 <tr>
1036 <td class="md" nowrap valign="top"> void _UTIL_pthread_mutex </td>
1037 <td class="md" valign="top">(&nbsp;</td>
1038 <td class="md" nowrap valign="top">void *&nbsp;</td>
1039 <td class="mdname" nowrap>, </td>
1040 </tr>
1041 <tr>
1042 <td class="md" nowrap align="right"></td>
1043 <td></td>
1044 <td class="md" nowrap><a class="el" href="spf_8h.html#a35">SPF_BOOL</a>&nbsp;</td>
1045 <td class="mdname" nowrap></td>
1046 </tr>
1047 <tr>
1048 <td></td>
1049 <td class="md">)&nbsp;</td>
1050 <td class="md" colspan="2"></td>
1051 </tr>
1052 </table>
1053 </td>
1054 </tr>
1055 </table>
1056 <table cellspacing=5 cellpadding=0 border=0>
1057 <tr>
1058 <td>
1059 &nbsp;
1060 </td>
1061 <td>
1062
1063 <p>
1064 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>.
1065 <p>
1066 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>
1067 </tr>
1068 </table>
1069 <a class="anchor" name="a43" doxytag="util.h::UTIL_a_cmp" ></a><p>
1070 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1071 <tr>
1072 <td class="mdRow">
1073 <table cellpadding="0" cellspacing="0" border="0">
1074 <tr>
1075 <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_a_cmp </td>
1076 <td class="md" valign="top">(&nbsp;</td>
1077 <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1078 <td class="mdname" nowrap>, </td>
1079 </tr>
1080 <tr>
1081 <td class="md" nowrap align="right"></td>
1082 <td></td>
1083 <td class="md" nowrap>const char *&nbsp;</td>
1084 <td class="mdname" nowrap>, </td>
1085 </tr>
1086 <tr>
1087 <td class="md" nowrap align="right"></td>
1088 <td></td>
1089 <td class="md" nowrap>const&nbsp;</td>
1090 <td class="mdname" nowrap> <em>int8_t</em></td>
1091 </tr>
1092 <tr>
1093 <td></td>
1094 <td class="md">)&nbsp;</td>
1095 <td class="md" colspan="2"></td>
1096 </tr>
1097 </table>
1098 </td>
1099 </tr>
1100 </table>
1101 <table cellspacing=5 cellpadding=0 border=0>
1102 <tr>
1103 <td>
1104 &nbsp;
1105 </td>
1106 <td>
1107
1108 <p>
1109 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>.
1110 <p>
1111 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>.
1112 <p>
1113 Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>.
1114 <p>
1115 Here is the call graph for this function:<p><center><img src="util_8h_a43_cgraph.png" border="0" usemap="#util_8h_a43_cgraph_map" alt=""></center>
1116 <map name="util_8h_a43_cgraph_map">
1117 <area href="util_8h.html#a47" shape="rect" coords="155,5,275,24" alt="">
1118 <area href="util_8h.html#a35" shape="rect" coords="324,29,404,48" alt="">
1119 <area href="util_8h.html#a52" shape="rect" coords="164,99,265,117" alt="">
1120 </map>
1121 </td>
1122 </tr>
1123 </table>
1124 <a class="anchor" name="a57" doxytag="util.h::UTIL_addnode" ></a><p>
1125 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1126 <tr>
1127 <td class="mdRow">
1128 <table cellpadding="0" cellspacing="0" border="0">
1129 <tr>
1130 <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_addnode </td>
1131 <td class="md" valign="top">(&nbsp;</td>
1132 <td class="md" nowrap valign="top"><a class="el" href="structsplit__str__s.html">split_str_t</a> *&nbsp;</td>
1133 <td class="mdname" nowrap>, </td>
1134 </tr>
1135 <tr>
1136 <td class="md" nowrap align="right"></td>
1137 <td></td>
1138 <td class="md" nowrap>const char *&nbsp;</td>
1139 <td class="mdname" nowrap>, </td>
1140 </tr>
1141 <tr>
1142 <td class="md" nowrap align="right"></td>
1143 <td></td>
1144 <td class="md" nowrap><a class="el" href="spf_8h.html#a35">SPF_BOOL</a>&nbsp;</td>
1145 <td class="mdname" nowrap></td>
1146 </tr>
1147 <tr>
1148 <td></td>
1149 <td class="md">)&nbsp;</td>
1150 <td class="md" colspan="2"></td>
1151 </tr>
1152 </table>
1153 </td>
1154 </tr>
1155 </table>
1156 <table cellspacing=5 cellpadding=0 border=0>
1157 <tr>
1158 <td>
1159 &nbsp;
1160 </td>
1161 <td>
1162
1163 <p>
1164 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>.
1165 <p>
1166 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>.
1167 <p>
1168 Referenced by <a class="el" href="util_8c-source.html#l02331">UTIL_reverse()</a>. </td>
1169 </tr>
1170 </table>
1171 <a class="anchor" name="a47" doxytag="util.h::UTIL_assoc_prefix" ></a><p>
1172 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1173 <tr>
1174 <td class="mdRow">
1175 <table cellpadding="0" cellspacing="0" border="0">
1176 <tr>
1177 <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_assoc_prefix </td>
1178 <td class="md" valign="top">(&nbsp;</td>
1179 <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1180 <td class="mdname" nowrap>, </td>
1181 </tr>
1182 <tr>
1183 <td class="md" nowrap align="right"></td>
1184 <td></td>
1185 <td class="md" nowrap><a class="el" href="spf_8h.html#a36">SPF_RESULT</a>&nbsp;</td>
1186 <td class="mdname" nowrap>, </td>
1187 </tr>
1188 <tr>
1189 <td class="md" nowrap align="right"></td>
1190 <td></td>
1191 <td class="md" nowrap>const char *&nbsp;</td>
1192 <td class="mdname" nowrap></td>
1193 </tr>
1194 <tr>
1195 <td></td>
1196 <td class="md">)&nbsp;</td>
1197 <td class="md" colspan="2"></td>
1198 </tr>
1199 </table>
1200 </td>
1201 </tr>
1202 </table>
1203 <table cellspacing=5 cellpadding=0 border=0>
1204 <tr>
1205 <td>
1206 &nbsp;
1207 </td>
1208 <td>
1209
1210 <p>
1211 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>.
1212 <p>
1213 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-source.html#l00361">peer_info_s::spf_result</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="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>.
1214 <p>
1215 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>.
1216 <p>
1217 Here is the call graph for this function:<p><center><img src="util_8h_a47_cgraph.png" border="0" usemap="#util_8h_a47_cgraph_map" alt=""></center>
1218 <map name="util_8h_a47_cgraph_map">
1219 <area href="util_8h.html#a35" shape="rect" coords="188,5,268,23" alt="">
1220 </map>
1221 </td>
1222 </tr>
1223 </table>
1224 <a class="anchor" name="a52" doxytag="util.h::UTIL_cidr_cmp" ></a><p>
1225 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1226 <tr>
1227 <td class="mdRow">
1228 <table cellpadding="0" cellspacing="0" border="0">
1229 <tr>
1230 <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_cidr_cmp </td>
1231 <td class="md" valign="top">(&nbsp;</td>
1232 <td class="md" nowrap valign="top">const <a class="el" href="structpolicy__addr__s.html">policy_addr_t</a> *&nbsp;</td>
1233 <td class="mdname" nowrap>, </td>
1234 </tr>
1235 <tr>
1236 <td class="md" nowrap align="right"></td>
1237 <td></td>
1238 <td class="md" nowrap>const struct in_addr *&nbsp;</td>
1239 <td class="mdname" nowrap></td>
1240 </tr>
1241 <tr>
1242 <td></td>
1243 <td class="md">)&nbsp;</td>
1244 <td class="md" colspan="2"></td>
1245 </tr>
1246 </table>
1247 </td>
1248 </tr>
1249 </table>
1250 <table cellspacing=5 cellpadding=0 border=0>
1251 <tr>
1252 <td>
1253 &nbsp;
1254 </td>
1255 <td>
1256
1257 <p>
1258 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>.
1259 <p>
1260 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>.
1261 <p>
1262 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>
1263 </tr>
1264 </table>
1265 <a class="anchor" name="a38" doxytag="util.h::UTIL_count_delim" ></a><p>
1266 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1267 <tr>
1268 <td class="mdRow">
1269 <table cellpadding="0" cellspacing="0" border="0">
1270 <tr>
1271 <td class="md" nowrap valign="top"> u_int8_t UTIL_count_delim </td>
1272 <td class="md" valign="top">(&nbsp;</td>
1273 <td class="md" nowrap valign="top">const char *&nbsp;</td>
1274 <td class="mdname" nowrap>, </td>
1275 </tr>
1276 <tr>
1277 <td class="md" nowrap align="right"></td>
1278 <td></td>
1279 <td class="md" nowrap>const&nbsp;</td>
1280 <td class="mdname" nowrap> <em>char</em></td>
1281 </tr>
1282 <tr>
1283 <td></td>
1284 <td class="md">)&nbsp;</td>
1285 <td class="md" colspan="2"></td>
1286 </tr>
1287 </table>
1288 </td>
1289 </tr>
1290 </table>
1291 <table cellspacing=5 cellpadding=0 border=0>
1292 <tr>
1293 <td>
1294 &nbsp;
1295 </td>
1296 <td>
1297
1298 <p>
1299 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>.
1300 <p>
1301 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>.
1302 <p>
1303 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>
1304 </tr>
1305 </table>
1306 <a class="anchor" name="a48" doxytag="util.h::UTIL_expand_ip" ></a><p>
1307 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1308 <tr>
1309 <td class="mdRow">
1310 <table cellpadding="0" cellspacing="0" border="0">
1311 <tr>
1312 <td class="md" nowrap valign="top"> <a class="el" href="structpolicy__addr__s.html">policy_addr_t</a>* UTIL_expand_ip </td>
1313 <td class="md" valign="top">(&nbsp;</td>
1314 <td class="md" nowrap valign="top">const char *&nbsp;</td>
1315 <td class="mdname1" valign="top" nowrap> </td>
1316 <td class="md" valign="top">&nbsp;)&nbsp;</td>
1317 <td class="md" nowrap></td>
1318 </tr>
1319 </table>
1320 </td>
1321 </tr>
1322 </table>
1323 <table cellspacing=5 cellpadding=0 border=0>
1324 <tr>
1325 <td>
1326 &nbsp;
1327 </td>
1328 <td>
1329
1330 <p>
1331 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>.
1332 <p>
1333 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>.
1334 <p>
1335 Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>.
1336 <p>
1337 Here is the call graph for this function:<p><center><img src="util_8h_a48_cgraph.png" border="0" usemap="#util_8h_a48_cgraph_map" alt=""></center>
1338 <map name="util_8h_a48_cgraph_map">
1339 <area href="util_8h.html#a35" shape="rect" coords="177,5,257,23" alt="">
1340 </map>
1341 </td>
1342 </tr>
1343 </table>
1344 <a class="anchor" name="a30" doxytag="util.h::UTIL_free" ></a><p>
1345 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1346 <tr>
1347 <td class="mdRow">
1348 <table cellpadding="0" cellspacing="0" border="0">
1349 <tr>
1350 <td class="md" nowrap valign="top"> void UTIL_free </td>
1351 <td class="md" valign="top">(&nbsp;</td>
1352 <td class="md" nowrap valign="top">void *&nbsp;</td>
1353 <td class="mdname" nowrap>, </td>
1354 </tr>
1355 <tr>
1356 <td class="md" nowrap align="right"></td>
1357 <td></td>
1358 <td class="md" nowrap>const char *&nbsp;</td>
1359 <td class="mdname" nowrap>, </td>
1360 </tr>
1361 <tr>
1362 <td class="md" nowrap align="right"></td>
1363 <td></td>
1364 <td class="md" nowrap>const&nbsp;</td>
1365 <td class="mdname" nowrap> <em>int32_t</em>, </td>
1366 </tr>
1367 <tr>
1368 <td class="md" nowrap align="right"></td>
1369 <td></td>
1370 <td class="md" nowrap>const char *&nbsp;</td>
1371 <td class="mdname" nowrap></td>
1372 </tr>
1373 <tr>
1374 <td></td>
1375 <td class="md">)&nbsp;</td>
1376 <td class="md" colspan="2"></td>
1377 </tr>
1378 </table>
1379 </td>
1380 </tr>
1381 </table>
1382 <table cellspacing=5 cellpadding=0 border=0>
1383 <tr>
1384 <td>
1385 &nbsp;
1386 </td>
1387 <td>
1388
1389 <p>
1390 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>.
1391 <p>
1392 References <a class="el" href="util_8h-source.html#l00142">xvprintf</a>. </td>
1393 </tr>
1394 </table>
1395 <a class="anchor" name="a32" doxytag="util.h::UTIL_get_date" ></a><p>
1396 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1397 <tr>
1398 <td class="mdRow">
1399 <table cellpadding="0" cellspacing="0" border="0">
1400 <tr>
1401 <td class="md" nowrap valign="top"> char* UTIL_get_date </td>
1402 <td class="md" valign="top">(&nbsp;</td>
1403 <td class="md" nowrap valign="top">void&nbsp;</td>
1404 <td class="mdname1" valign="top" nowrap> </td>
1405 <td class="md" valign="top">&nbsp;)&nbsp;</td>
1406 <td class="md" nowrap></td>
1407 </tr>
1408 </table>
1409 </td>
1410 </tr>
1411 </table>
1412 <table cellspacing=5 cellpadding=0 border=0>
1413 <tr>
1414 <td>
1415 &nbsp;
1416 </td>
1417 <td>
1418
1419 <p>
1420 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>.
1421 <p>
1422 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>.
1423 <p>
1424 Referenced by <a class="el" href="util_8c-source.html#l00326">UTIL_log_result()</a>. </td>
1425 </tr>
1426 </table>
1427 <a class="anchor" name="a51" doxytag="util.h::UTIL_get_dname" ></a><p>
1428 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1429 <tr>
1430 <td class="mdRow">
1431 <table cellpadding="0" cellspacing="0" border="0">
1432 <tr>
1433 <td class="md" nowrap valign="top"> char* UTIL_get_dname </td>
1434 <td class="md" valign="top">(&nbsp;</td>
1435 <td class="md" nowrap valign="top">const char *&nbsp;</td>
1436 <td class="mdname1" valign="top" nowrap> </td>
1437 <td class="md" valign="top">&nbsp;)&nbsp;</td>
1438 <td class="md" nowrap></td>
1439 </tr>
1440 </table>
1441 </td>
1442 </tr>
1443 </table>
1444 <table cellspacing=5 cellpadding=0 border=0>
1445 <tr>
1446 <td>
1447 &nbsp;
1448 </td>
1449 <td>
1450
1451 <p>
1452 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>.
1453 <p>
1454 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>.
1455 <p>
1456 Here is the call graph for this function:<p><center><img src="util_8h_a51_cgraph.png" border="0" usemap="#util_8h_a51_cgraph_map" alt=""></center>
1457 <map name="util_8h_a51_cgraph_map">
1458 <area href="util_8h.html#a38" shape="rect" coords="180,5,297,24" alt="">
1459 <area href="util_8h.html#a36" shape="rect" coords="193,48,284,66" alt="">
1460 </map>
1461 </td>
1462 </tr>
1463 </table>
1464 <a class="anchor" name="a46" doxytag="util.h::UTIL_get_mech_prefix" ></a><p>
1465 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1466 <tr>
1467 <td class="mdRow">
1468 <table cellpadding="0" cellspacing="0" border="0">
1469 <tr>
1470 <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a36">SPF_RESULT</a> UTIL_get_mech_prefix </td>
1471 <td class="md" valign="top">(&nbsp;</td>
1472 <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1473 <td class="mdname" nowrap>, </td>
1474 </tr>
1475 <tr>
1476 <td class="md" nowrap align="right"></td>
1477 <td></td>
1478 <td class="md" nowrap>const char *&nbsp;</td>
1479 <td class="mdname" nowrap></td>
1480 </tr>
1481 <tr>
1482 <td></td>
1483 <td class="md">)&nbsp;</td>
1484 <td class="md" colspan="2"></td>
1485 </tr>
1486 </table>
1487 </td>
1488 </tr>
1489 </table>
1490 <table cellspacing=5 cellpadding=0 border=0>
1491 <tr>
1492 <td>
1493 &nbsp;
1494 </td>
1495 <td>
1496
1497 <p>
1498 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>.
1499 <p>
1500 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>.
1501 <p>
1502 Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>.
1503 <p>
1504 Here is the call graph for this function:<p><center><img src="util_8h_a46_cgraph.png" border="0" usemap="#util_8h_a46_cgraph_map" alt=""></center>
1505 <map name="util_8h_a46_cgraph_map">
1506 <area href="util_8h.html#a35" shape="rect" coords="215,5,295,23" alt="">
1507 </map>
1508 </td>
1509 </tr>
1510 </table>
1511 <a class="anchor" name="a45" doxytag="util.h::UTIL_get_policy_mech" ></a><p>
1512 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1513 <tr>
1514 <td class="mdRow">
1515 <table cellpadding="0" cellspacing="0" border="0">
1516 <tr>
1517 <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a38">SPF_MECHANISM</a> UTIL_get_policy_mech </td>
1518 <td class="md" valign="top">(&nbsp;</td>
1519 <td class="md" nowrap valign="top">const char *&nbsp;</td>
1520 <td class="mdname1" valign="top" nowrap> </td>
1521 <td class="md" valign="top">&nbsp;)&nbsp;</td>
1522 <td class="md" nowrap></td>
1523 </tr>
1524 </table>
1525 </td>
1526 </tr>
1527 </table>
1528 <table cellspacing=5 cellpadding=0 border=0>
1529 <tr>
1530 <td>
1531 &nbsp;
1532 </td>
1533 <td>
1534
1535 <p>
1536 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>.
1537 <p>
1538 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>.
1539 <p>
1540 Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>. </td>
1541 </tr>
1542 </table>
1543 <a class="anchor" name="a35" doxytag="util.h::UTIL_index" ></a><p>
1544 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1545 <tr>
1546 <td class="mdRow">
1547 <table cellpadding="0" cellspacing="0" border="0">
1548 <tr>
1549 <td class="md" nowrap valign="top"> int16_t UTIL_index </td>
1550 <td class="md" valign="top">(&nbsp;</td>
1551 <td class="md" nowrap valign="top">const char *&nbsp;</td>
1552 <td class="mdname" nowrap>, </td>
1553 </tr>
1554 <tr>
1555 <td class="md" nowrap align="right"></td>
1556 <td></td>
1557 <td class="md" nowrap>const&nbsp;</td>
1558 <td class="mdname" nowrap> <em>char</em></td>
1559 </tr>
1560 <tr>
1561 <td></td>
1562 <td class="md">)&nbsp;</td>
1563 <td class="md" colspan="2"></td>
1564 </tr>
1565 </table>
1566 </td>
1567 </tr>
1568 </table>
1569 <table cellspacing=5 cellpadding=0 border=0>
1570 <tr>
1571 <td>
1572 &nbsp;
1573 </td>
1574 <td>
1575
1576 <p>
1577 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>.
1578 <p>
1579 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>.
1580 <p>
1581 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>
1582 </tr>
1583 </table>
1584 <a class="anchor" name="a49" doxytag="util.h::UTIL_is_ip" ></a><p>
1585 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1586 <tr>
1587 <td class="mdRow">
1588 <table cellpadding="0" cellspacing="0" border="0">
1589 <tr>
1590 <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_is_ip </td>
1591 <td class="md" valign="top">(&nbsp;</td>
1592 <td class="md" nowrap valign="top">const char *&nbsp;</td>
1593 <td class="mdname1" valign="top" nowrap> </td>
1594 <td class="md" valign="top">&nbsp;)&nbsp;</td>
1595 <td class="md" nowrap></td>
1596 </tr>
1597 </table>
1598 </td>
1599 </tr>
1600 </table>
1601 <table cellspacing=5 cellpadding=0 border=0>
1602 <tr>
1603 <td>
1604 &nbsp;
1605 </td>
1606 <td>
1607
1608 <p>
1609 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>.
1610 <p>
1611 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>
1612 </tr>
1613 </table>
1614 <a class="anchor" name="a41" doxytag="util.h::UTIL_is_macro" ></a><p>
1615 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1616 <tr>
1617 <td class="mdRow">
1618 <table cellpadding="0" cellspacing="0" border="0">
1619 <tr>
1620 <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_is_macro </td>
1621 <td class="md" valign="top">(&nbsp;</td>
1622 <td class="md" nowrap valign="top">const char *&nbsp;</td>
1623 <td class="mdname1" valign="top" nowrap> </td>
1624 <td class="md" valign="top">&nbsp;)&nbsp;</td>
1625 <td class="md" nowrap></td>
1626 </tr>
1627 </table>
1628 </td>
1629 </tr>
1630 </table>
1631 <table cellspacing=5 cellpadding=0 border=0>
1632 <tr>
1633 <td>
1634 &nbsp;
1635 </td>
1636 <td>
1637
1638 <p>
1639 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>.
1640 <p>
1641 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>.
1642 <p>
1643 Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>. </td>
1644 </tr>
1645 </table>
1646 <a class="anchor" name="a39" doxytag="util.h::UTIL_is_spf_delim" ></a><p>
1647 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1648 <tr>
1649 <td class="mdRow">
1650 <table cellpadding="0" cellspacing="0" border="0">
1651 <tr>
1652 <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_is_spf_delim </td>
1653 <td class="md" valign="top">(&nbsp;</td>
1654 <td class="md" nowrap valign="top">const&nbsp;</td>
1655 <td class="mdname1" valign="top" nowrap> <em>char</em> </td>
1656 <td class="md" valign="top">&nbsp;)&nbsp;</td>
1657 <td class="md" nowrap></td>
1658 </tr>
1659 </table>
1660 </td>
1661 </tr>
1662 </table>
1663 <table cellspacing=5 cellpadding=0 border=0>
1664 <tr>
1665 <td>
1666 &nbsp;
1667 </td>
1668 <td>
1669
1670 <p>
1671 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>.
1672 <p>
1673 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>.
1674 <p>
1675 Referenced by <a class="el" href="macro_8c-source.html#l00505">MACRO_eatmore()</a>. </td>
1676 </tr>
1677 </table>
1678 <a class="anchor" name="a40" doxytag="util.h::UTIL_is_spf_result" ></a><p>
1679 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1680 <tr>
1681 <td class="mdRow">
1682 <table cellpadding="0" cellspacing="0" border="0">
1683 <tr>
1684 <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_is_spf_result </td>
1685 <td class="md" valign="top">(&nbsp;</td>
1686 <td class="md" nowrap valign="top">const&nbsp;</td>
1687 <td class="mdname1" valign="top" nowrap> <em>char</em> </td>
1688 <td class="md" valign="top">&nbsp;)&nbsp;</td>
1689 <td class="md" nowrap></td>
1690 </tr>
1691 </table>
1692 </td>
1693 </tr>
1694 </table>
1695 <table cellspacing=5 cellpadding=0 border=0>
1696 <tr>
1697 <td>
1698 &nbsp;
1699 </td>
1700 <td>
1701
1702 <p>
1703 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>.
1704 <p>
1705 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>.
1706 <p>
1707 Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>. </td>
1708 </tr>
1709 </table>
1710 <a class="anchor" name="a31" doxytag="util.h::UTIL_log_result" ></a><p>
1711 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1712 <tr>
1713 <td class="mdRow">
1714 <table cellpadding="0" cellspacing="0" border="0">
1715 <tr>
1716 <td class="md" nowrap valign="top"> void UTIL_log_result </td>
1717 <td class="md" valign="top">(&nbsp;</td>
1718 <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1719 <td class="mdname1" valign="top" nowrap> </td>
1720 <td class="md" valign="top">&nbsp;)&nbsp;</td>
1721 <td class="md" nowrap></td>
1722 </tr>
1723 </table>
1724 </td>
1725 </tr>
1726 </table>
1727 <table cellspacing=5 cellpadding=0 border=0>
1728 <tr>
1729 <td>
1730 &nbsp;
1731 </td>
1732 <td>
1733
1734 <p>
1735 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>.
1736 <p>
1737 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>.
1738 <p>
1739 Referenced by <a class="el" href="main_8c-source.html#l00570">SPF_policy_main_rec()</a>.
1740 <p>
1741 Here is the call graph for this function:<p><center><img src="util_8h_a31_cgraph.png" border="0" usemap="#util_8h_a31_cgraph_map" alt=""></center>
1742 <map name="util_8h_a31_cgraph_map">
1743 <area href="util_8c.html#a6" shape="rect" coords="173,5,272,23" alt="">
1744 </map>
1745 </td>
1746 </tr>
1747 </table>
1748 <a class="anchor" name="a28" doxytag="util.h::UTIL_malloc" ></a><p>
1749 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1750 <tr>
1751 <td class="mdRow">
1752 <table cellpadding="0" cellspacing="0" border="0">
1753 <tr>
1754 <td class="md" nowrap valign="top"> void* UTIL_malloc </td>
1755 <td class="md" valign="top">(&nbsp;</td>
1756 <td class="md" nowrap valign="top">const&nbsp;</td>
1757 <td class="mdname" nowrap> <em>int32_t</em>, </td>
1758 </tr>
1759 <tr>
1760 <td class="md" nowrap align="right"></td>
1761 <td></td>
1762 <td class="md" nowrap>const char *&nbsp;</td>
1763 <td class="mdname" nowrap>, </td>
1764 </tr>
1765 <tr>
1766 <td class="md" nowrap align="right"></td>
1767 <td></td>
1768 <td class="md" nowrap>const&nbsp;</td>
1769 <td class="mdname" nowrap> <em>int32_t</em>, </td>
1770 </tr>
1771 <tr>
1772 <td class="md" nowrap align="right"></td>
1773 <td></td>
1774 <td class="md" nowrap>const char *&nbsp;</td>
1775 <td class="mdname" nowrap></td>
1776 </tr>
1777 <tr>
1778 <td></td>
1779 <td class="md">)&nbsp;</td>
1780 <td class="md" colspan="2"></td>
1781 </tr>
1782 </table>
1783 </td>
1784 </tr>
1785 </table>
1786 <table cellspacing=5 cellpadding=0 border=0>
1787 <tr>
1788 <td>
1789 &nbsp;
1790 </td>
1791 <td>
1792
1793 <p>
1794 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>.
1795 <p>
1796 References <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
1797 <p>
1798 Referenced by <a class="el" href="util_8c-source.html#l00486">UTIL_realloc()</a>. </td>
1799 </tr>
1800 </table>
1801 <a class="anchor" name="a42" doxytag="util.h::UTIL_mx_cmp" ></a><p>
1802 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1803 <tr>
1804 <td class="mdRow">
1805 <table cellpadding="0" cellspacing="0" border="0">
1806 <tr>
1807 <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_mx_cmp </td>
1808 <td class="md" valign="top">(&nbsp;</td>
1809 <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1810 <td class="mdname" nowrap>, </td>
1811 </tr>
1812 <tr>
1813 <td class="md" nowrap align="right"></td>
1814 <td></td>
1815 <td class="md" nowrap>const char *&nbsp;</td>
1816 <td class="mdname" nowrap>, </td>
1817 </tr>
1818 <tr>
1819 <td class="md" nowrap align="right"></td>
1820 <td></td>
1821 <td class="md" nowrap>const&nbsp;</td>
1822 <td class="mdname" nowrap> <em>int8_t</em></td>
1823 </tr>
1824 <tr>
1825 <td></td>
1826 <td class="md">)&nbsp;</td>
1827 <td class="md" colspan="2"></td>
1828 </tr>
1829 </table>
1830 </td>
1831 </tr>
1832 </table>
1833 <table cellspacing=5 cellpadding=0 border=0>
1834 <tr>
1835 <td>
1836 &nbsp;
1837 </td>
1838 <td>
1839
1840 <p>
1841 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>.
1842 <p>
1843 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>.
1844 <p>
1845 Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>.
1846 <p>
1847 Here is the call graph for this function:<p><center><img src="util_8h_a42_cgraph.png" border="0" usemap="#util_8h_a42_cgraph_map" alt=""></center>
1848 <map name="util_8h_a42_cgraph_map">
1849 <area href="dns_8h.html#a8" shape="rect" coords="165,188,245,206" alt="">
1850 <area href="util_8h.html#a54" shape="rect" coords="485,230,643,249" alt="">
1851 <area href="util_8h.html#a47" shape="rect" coords="693,277,813,296" alt="">
1852 <area href="dns_8h.html#a12" shape="rect" coords="296,145,435,164" alt="">
1853 <area href="dns_8h.html#a10" shape="rect" coords="307,188,424,206" alt="">
1854 <area href="dns_8h.html#a11" shape="rect" coords="309,230,421,249" alt="">
1855 <area href="dns_8h.html#a9" shape="rect" coords="309,102,421,121" alt="">
1856 <area href="util_8h.html#a52" shape="rect" coords="703,230,804,249" alt="">
1857 </map>
1858 </td>
1859 </tr>
1860 </table>
1861 <a class="anchor" name="a44" doxytag="util.h::UTIL_ptr_cmp" ></a><p>
1862 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1863 <tr>
1864 <td class="mdRow">
1865 <table cellpadding="0" cellspacing="0" border="0">
1866 <tr>
1867 <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_ptr_cmp </td>
1868 <td class="md" valign="top">(&nbsp;</td>
1869 <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1870 <td class="mdname" nowrap>, </td>
1871 </tr>
1872 <tr>
1873 <td class="md" nowrap align="right"></td>
1874 <td></td>
1875 <td class="md" nowrap>const char *&nbsp;</td>
1876 <td class="mdname" nowrap></td>
1877 </tr>
1878 <tr>
1879 <td></td>
1880 <td class="md">)&nbsp;</td>
1881 <td class="md" colspan="2"></td>
1882 </tr>
1883 </table>
1884 </td>
1885 </tr>
1886 </table>
1887 <table cellspacing=5 cellpadding=0 border=0>
1888 <tr>
1889 <td>
1890 &nbsp;
1891 </td>
1892 <td>
1893
1894 <p>
1895 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>.
1896 <p>
1897 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>.
1898 <p>
1899 Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>.
1900 <p>
1901 Here is the call graph for this function:<p><center><img src="util_8h_a44_cgraph.png" border="0" usemap="#util_8h_a44_cgraph_map" alt=""></center>
1902 <map name="util_8h_a44_cgraph_map">
1903 <area href="dns_8h.html#a8" shape="rect" coords="173,90,253,109" alt="">
1904 <area href="util_8h.html#a50" shape="rect" coords="163,133,264,152" alt="">
1905 <area href="dns_8h.html#a12" shape="rect" coords="315,5,453,24" alt="">
1906 <area href="dns_8h.html#a10" shape="rect" coords="325,48,443,66" alt="">
1907 <area href="dns_8h.html#a11" shape="rect" coords="328,90,440,109" alt="">
1908 <area href="util_8h.html#a47" shape="rect" coords="712,134,832,153" alt="">
1909 <area href="dns_8h.html#a9" shape="rect" coords="328,184,440,202" alt="">
1910 <area href="util_8h.html#a54" shape="rect" coords="504,90,661,109" alt="">
1911 <area href="util_8h.html#a52" shape="rect" coords="721,90,823,109" alt="">
1912 </map>
1913 </td>
1914 </tr>
1915 </table>
1916 <a class="anchor" name="a29" doxytag="util.h::UTIL_realloc" ></a><p>
1917 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1918 <tr>
1919 <td class="mdRow">
1920 <table cellpadding="0" cellspacing="0" border="0">
1921 <tr>
1922 <td class="md" nowrap valign="top"> void* UTIL_realloc </td>
1923 <td class="md" valign="top">(&nbsp;</td>
1924 <td class="md" nowrap valign="top">void *&nbsp;</td>
1925 <td class="mdname" nowrap>, </td>
1926 </tr>
1927 <tr>
1928 <td class="md" nowrap align="right"></td>
1929 <td></td>
1930 <td class="md" nowrap>const&nbsp;</td>
1931 <td class="mdname" nowrap> <em>int32_t</em>, </td>
1932 </tr>
1933 <tr>
1934 <td class="md" nowrap align="right"></td>
1935 <td></td>
1936 <td class="md" nowrap>const char *&nbsp;</td>
1937 <td class="mdname" nowrap>, </td>
1938 </tr>
1939 <tr>
1940 <td class="md" nowrap align="right"></td>
1941 <td></td>
1942 <td class="md" nowrap>const&nbsp;</td>
1943 <td class="mdname" nowrap> <em>int32_t</em>, </td>
1944 </tr>
1945 <tr>
1946 <td class="md" nowrap align="right"></td>
1947 <td></td>
1948 <td class="md" nowrap>const char *&nbsp;</td>
1949 <td class="mdname" nowrap></td>
1950 </tr>
1951 <tr>
1952 <td></td>
1953 <td class="md">)&nbsp;</td>
1954 <td class="md" colspan="2"></td>
1955 </tr>
1956 </table>
1957 </td>
1958 </tr>
1959 </table>
1960 <table cellspacing=5 cellpadding=0 border=0>
1961 <tr>
1962 <td>
1963 &nbsp;
1964 </td>
1965 <td>
1966
1967 <p>
1968 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>.
1969 <p>
1970 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>.
1971 <p>
1972 Here is the call graph for this function:<p><center><img src="util_8h_a29_cgraph.png" border="0" usemap="#util_8h_a29_cgraph_map" alt=""></center>
1973 <map name="util_8h_a29_cgraph_map">
1974 <area href="util_8h.html#a28" shape="rect" coords="153,5,239,23" alt="">
1975 </map>
1976 </td>
1977 </tr>
1978 </table>
1979 <a class="anchor" name="a50" doxytag="util.h::UTIL_rev_addr" ></a><p>
1980 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1981 <tr>
1982 <td class="mdRow">
1983 <table cellpadding="0" cellspacing="0" border="0">
1984 <tr>
1985 <td class="md" nowrap valign="top"> char* UTIL_rev_addr </td>
1986 <td class="md" valign="top">(&nbsp;</td>
1987 <td class="md" nowrap valign="top">const char *&nbsp;</td>
1988 <td class="mdname1" valign="top" nowrap> </td>
1989 <td class="md" valign="top">&nbsp;)&nbsp;</td>
1990 <td class="md" nowrap></td>
1991 </tr>
1992 </table>
1993 </td>
1994 </tr>
1995 </table>
1996 <table cellspacing=5 cellpadding=0 border=0>
1997 <tr>
1998 <td>
1999 &nbsp;
2000 </td>
2001 <td>
2002
2003 <p>
2004 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>.
2005 <p>
2006 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>.
2007 <p>
2008 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>
2009 </tr>
2010 </table>
2011 <a class="anchor" name="a56" doxytag="util.h::UTIL_reverse" ></a><p>
2012 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2013 <tr>
2014 <td class="mdRow">
2015 <table cellpadding="0" cellspacing="0" border="0">
2016 <tr>
2017 <td class="md" nowrap valign="top"> char* UTIL_reverse </td>
2018 <td class="md" valign="top">(&nbsp;</td>
2019 <td class="md" nowrap valign="top">const char *&nbsp;</td>
2020 <td class="mdname" nowrap>, </td>
2021 </tr>
2022 <tr>
2023 <td class="md" nowrap align="right"></td>
2024 <td></td>
2025 <td class="md" nowrap>const&nbsp;</td>
2026 <td class="mdname" nowrap> <em>char</em></td>
2027 </tr>
2028 <tr>
2029 <td></td>
2030 <td class="md">)&nbsp;</td>
2031 <td class="md" colspan="2"></td>
2032 </tr>
2033 </table>
2034 </td>
2035 </tr>
2036 </table>
2037 <table cellspacing=5 cellpadding=0 border=0>
2038 <tr>
2039 <td>
2040 &nbsp;
2041 </td>
2042 <td>
2043
2044 <p>
2045 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>.
2046 <p>
2047 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>.
2048 <p>
2049 Referenced by <a class="el" href="macro_8c-source.html#l00505">MACRO_eatmore()</a>.
2050 <p>
2051 Here is the call graph for this function:<p><center><img src="util_8h_a56_cgraph.png" border="0" usemap="#util_8h_a56_cgraph_map" alt=""></center>
2052 <map name="util_8h_a56_cgraph_map">
2053 <area href="util_8h.html#a57" shape="rect" coords="157,5,256,23" alt="">
2054 </map>
2055 </td>
2056 </tr>
2057 </table>
2058 <a class="anchor" name="a36" doxytag="util.h::UTIL_split_str" ></a><p>
2059 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2060 <tr>
2061 <td class="mdRow">
2062 <table cellpadding="0" cellspacing="0" border="0">
2063 <tr>
2064 <td class="md" nowrap valign="top"> char* UTIL_split_str </td>
2065 <td class="md" valign="top">(&nbsp;</td>
2066 <td class="md" nowrap valign="top">const char *&nbsp;</td>
2067 <td class="mdname" nowrap>, </td>
2068 </tr>
2069 <tr>
2070 <td class="md" nowrap align="right"></td>
2071 <td></td>
2072 <td class="md" nowrap>const&nbsp;</td>
2073 <td class="mdname" nowrap> <em>char</em>, </td>
2074 </tr>
2075 <tr>
2076 <td class="md" nowrap align="right"></td>
2077 <td></td>
2078 <td class="md" nowrap>const&nbsp;</td>
2079 <td class="mdname" nowrap> <em>u_int8_t</em></td>
2080 </tr>
2081 <tr>
2082 <td></td>
2083 <td class="md">)&nbsp;</td>
2084 <td class="md" colspan="2"></td>
2085 </tr>
2086 </table>
2087 </td>
2088 </tr>
2089 </table>
2090 <table cellspacing=5 cellpadding=0 border=0>
2091 <tr>
2092 <td>
2093 &nbsp;
2094 </td>
2095 <td>
2096
2097 <p>
2098 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>.
2099 <p>
2100 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>.
2101 <p>
2102 Referenced by <a class="el" href="util_8c-source.html#l01906">UTIL_get_dname()</a>. </td>
2103 </tr>
2104 </table>
2105 <a class="anchor" name="a37" doxytag="util.h::UTIL_split_strr" ></a><p>
2106 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2107 <tr>
2108 <td class="mdRow">
2109 <table cellpadding="0" cellspacing="0" border="0">
2110 <tr>
2111 <td class="md" nowrap valign="top"> char* UTIL_split_strr </td>
2112 <td class="md" valign="top">(&nbsp;</td>
2113 <td class="md" nowrap valign="top">const char *&nbsp;</td>
2114 <td class="mdname" nowrap>, </td>
2115 </tr>
2116 <tr>
2117 <td class="md" nowrap align="right"></td>
2118 <td></td>
2119 <td class="md" nowrap>const&nbsp;</td>
2120 <td class="mdname" nowrap> <em>char</em>, </td>
2121 </tr>
2122 <tr>
2123 <td class="md" nowrap align="right"></td>
2124 <td></td>
2125 <td class="md" nowrap>const&nbsp;</td>
2126 <td class="mdname" nowrap> <em>u_int8_t</em></td>
2127 </tr>
2128 <tr>
2129 <td></td>
2130 <td class="md">)&nbsp;</td>
2131 <td class="md" colspan="2"></td>
2132 </tr>
2133 </table>
2134 </td>
2135 </tr>
2136 </table>
2137 <table cellspacing=5 cellpadding=0 border=0>
2138 <tr>
2139 <td>
2140 &nbsp;
2141 </td>
2142 <td>
2143
2144 <p>
2145 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>.
2146 <p>
2147 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>.
2148 <p>
2149 Referenced by <a class="el" href="macro_8c-source.html#l00505">MACRO_eatmore()</a>. </td>
2150 </tr>
2151 </table>
2152 <a class="anchor" name="a34" doxytag="util.h::UTIL_strdup" ></a><p>
2153 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2154 <tr>
2155 <td class="mdRow">
2156 <table cellpadding="0" cellspacing="0" border="0">
2157 <tr>
2158 <td class="md" nowrap valign="top"> char* UTIL_strdup </td>
2159 <td class="md" valign="top">(&nbsp;</td>
2160 <td class="md" nowrap valign="top">const char *&nbsp;</td>
2161 <td class="mdname1" valign="top" nowrap> </td>
2162 <td class="md" valign="top">&nbsp;)&nbsp;</td>
2163 <td class="md" nowrap></td>
2164 </tr>
2165 </table>
2166 </td>
2167 </tr>
2168 </table>
2169 <table cellspacing=5 cellpadding=0 border=0>
2170 <tr>
2171 <td>
2172 &nbsp;
2173 </td>
2174 <td>
2175
2176 <p>
2177 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>.
2178 <p>
2179 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>
2180 </tr>
2181 </table>
2182 <a class="anchor" name="a33" doxytag="util.h::UTIL_strndup" ></a><p>
2183 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2184 <tr>
2185 <td class="mdRow">
2186 <table cellpadding="0" cellspacing="0" border="0">
2187 <tr>
2188 <td class="md" nowrap valign="top"> char* UTIL_strndup </td>
2189 <td class="md" valign="top">(&nbsp;</td>
2190 <td class="md" nowrap valign="top">const char *&nbsp;</td>
2191 <td class="mdname" nowrap>, </td>
2192 </tr>
2193 <tr>
2194 <td class="md" nowrap align="right"></td>
2195 <td></td>
2196 <td class="md" nowrap>const&nbsp;</td>
2197 <td class="mdname" nowrap> <em>size_t</em></td>
2198 </tr>
2199 <tr>
2200 <td></td>
2201 <td class="md">)&nbsp;</td>
2202 <td class="md" colspan="2"></td>
2203 </tr>
2204 </table>
2205 </td>
2206 </tr>
2207 </table>
2208 <table cellspacing=5 cellpadding=0 border=0>
2209 <tr>
2210 <td>
2211 &nbsp;
2212 </td>
2213 <td>
2214
2215 <p>
2216 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>.
2217 <p>
2218 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>
2219 </tr>
2220 </table>
2221 <a class="anchor" name="a55" doxytag="util.h::UTIL_url_encode" ></a><p>
2222 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2223 <tr>
2224 <td class="mdRow">
2225 <table cellpadding="0" cellspacing="0" border="0">
2226 <tr>
2227 <td class="md" nowrap valign="top"> char* UTIL_url_encode </td>
2228 <td class="md" valign="top">(&nbsp;</td>
2229 <td class="md" nowrap valign="top">const char *&nbsp;</td>
2230 <td class="mdname1" valign="top" nowrap> </td>
2231 <td class="md" valign="top">&nbsp;)&nbsp;</td>
2232 <td class="md" nowrap></td>
2233 </tr>
2234 </table>
2235 </td>
2236 </tr>
2237 </table>
2238 <table cellspacing=5 cellpadding=0 border=0>
2239 <tr>
2240 <td>
2241 &nbsp;
2242 </td>
2243 <td>
2244
2245 <p>
2246 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>.
2247 <p>
2248 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>
2249 </tr>
2250 </table>
2251 <a class="anchor" name="a54" doxytag="util.h::UTIL_validate_hostname" ></a><p>
2252 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2253 <tr>
2254 <td class="mdRow">
2255 <table cellpadding="0" cellspacing="0" border="0">
2256 <tr>
2257 <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_validate_hostname </td>
2258 <td class="md" valign="top">(&nbsp;</td>
2259 <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
2260 <td class="mdname" nowrap>, </td>
2261 </tr>
2262 <tr>
2263 <td class="md" nowrap align="right"></td>
2264 <td></td>
2265 <td class="md" nowrap>const char *&nbsp;</td>
2266 <td class="mdname" nowrap>, </td>
2267 </tr>
2268 <tr>
2269 <td class="md" nowrap align="right"></td>
2270 <td></td>
2271 <td class="md" nowrap>const&nbsp;</td>
2272 <td class="mdname" nowrap> <em>int8_t</em></td>
2273 </tr>
2274 <tr>
2275 <td></td>
2276 <td class="md">)&nbsp;</td>
2277 <td class="md" colspan="2"></td>
2278 </tr>
2279 </table>
2280 </td>
2281 </tr>
2282 </table>
2283 <table cellspacing=5 cellpadding=0 border=0>
2284 <tr>
2285 <td>
2286 &nbsp;
2287 </td>
2288 <td>
2289
2290 <p>
2291 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>.
2292 <p>
2293 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>.
2294 <p>
2295 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>.
2296 <p>
2297 Here is the call graph for this function:<p><center><img src="util_8h_a54_cgraph.png" border="0" usemap="#util_8h_a54_cgraph_map" alt=""></center>
2298 <map name="util_8h_a54_cgraph_map">
2299 <area href="util_8h.html#a47" shape="rect" coords="227,5,347,24" alt="">
2300 <area href="util_8h.html#a52" shape="rect" coords="236,48,337,66" alt="">
2301 <area href="util_8h.html#a35" shape="rect" coords="396,5,476,24" alt="">
2302 </map>
2303 </td>
2304 </tr>
2305 </table>
2306 <a class="anchor" name="a53" doxytag="util.h::UTIL_validate_ptr" ></a><p>
2307 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2308 <tr>
2309 <td class="mdRow">
2310 <table cellpadding="0" cellspacing="0" border="0">
2311 <tr>
2312 <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> UTIL_validate_ptr </td>
2313 <td class="md" valign="top">(&nbsp;</td>
2314 <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
2315 <td class="mdname1" valign="top" nowrap> </td>
2316 <td class="md" valign="top">&nbsp;)&nbsp;</td>
2317 <td class="md" nowrap></td>
2318 </tr>
2319 </table>
2320 </td>
2321 </tr>
2322 </table>
2323 <table cellspacing=5 cellpadding=0 border=0>
2324 <tr>
2325 <td>
2326 &nbsp;
2327 </td>
2328 <td>
2329
2330 <p>
2331 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>.
2332 <p>
2333 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>.
2334 <p>
2335 Here is the call graph for this function:<p><center><img src="util_8h_a53_cgraph.png" border="0" usemap="#util_8h_a53_cgraph_map" alt=""></center>
2336 <map name="util_8h_a53_cgraph_map">
2337 <area href="dns_8h.html#a8" shape="rect" coords="197,90,277,109" alt="">
2338 <area href="util_8h.html#a50" shape="rect" coords="187,133,288,152" alt="">
2339 <area href="dns_8h.html#a12" shape="rect" coords="339,5,477,24" alt="">
2340 <area href="dns_8h.html#a10" shape="rect" coords="349,48,467,66" alt="">
2341 <area href="dns_8h.html#a11" shape="rect" coords="352,90,464,109" alt="">
2342 <area href="util_8h.html#a47" shape="rect" coords="736,134,856,153" alt="">
2343 <area href="dns_8h.html#a9" shape="rect" coords="352,184,464,202" alt="">
2344 <area href="util_8h.html#a54" shape="rect" coords="528,90,685,109" alt="">
2345 <area href="util_8h.html#a52" shape="rect" coords="745,90,847,109" alt="">
2346 </map>
2347 </td>
2348 </tr>
2349 </table>
2350 <hr><h2>Variable Documentation</h2>
2351 <a class="anchor" name="a22" doxytag="util.h::urlchr_table" ></a><p>
2352 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2353 <tr>
2354 <td class="mdRow">
2355 <table cellpadding="0" cellspacing="0" border="0">
2356 <tr>
2357 <td class="md" nowrap valign="top"> const u_char <a class="el" href="util_8h.html#a22">urlchr_table</a>[256]<code> [static]</code> </td>
2358 </tr>
2359 </table>
2360 </td>
2361 </tr>
2362 </table>
2363 <table cellspacing=5 cellpadding=0 border=0>
2364 <tr>
2365 <td>
2366 &nbsp;
2367 </td>
2368 <td>
2369
2370 <p>
2371 <b>Initial value:</b><pre class="fragment"><div>
2372 {
2373 1, 1, 1, 1, 1, 1, 1, 1,
2374 1, 1, 1, 1, 1, 1, 1, 1,
2375 1, 1, 1, 1, 1, 1, 1, 1,
2376 1, 1, 1, 1, 1, 1, 1, 1,
2377 1, 0, 1, 1, 0, 1, 1, 0,
2378 0, 0, 0, 1, 0, 0, 0, 1,
2379 0, 0, 0, 0, 0, 0, 0, 0,
2380 0, 0, 1, 1, 1, 1, 1, 1,
2381 1, 0, 0, 0, 0, 0, 0, 0,
2382 0, 0, 0, 0, 0, 0, 0, 0,
2383 0, 0, 0, 0, 0, 0, 0, 0,
2384 0, 0, 0, 1, 1, 1, 1, 0,
2385 1, 0, 0, 0, 0, 0, 0, 0,
2386 0, 0, 0, 0, 0, 0, 0, 0,
2387 0, 0, 0, 0, 0, 0, 0, 0,
2388 0, 0, 0, 1, 1, 1, 1, 1,
2389
2390 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2391 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2392 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2393 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2394
2395 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2396 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2397 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2398 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2399 }
2400 </div></pre>Definition at line <a class="el" href="util_8h-source.html#l00172">172</a> of file <a class="el" href="util_8h-source.html">util.h</a>. </td>
2401 </tr>
2402 </table>
2403 <a class="anchor" name="a23" doxytag="util.h::util_mutex" ></a><p>
2404 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2405 <tr>
2406 <td class="mdRow">
2407 <table cellpadding="0" cellspacing="0" border="0">
2408 <tr>
2409 <td class="md" nowrap valign="top"> void* <a class="el" href="util_8h.html#a23">util_mutex</a> </td>
2410 </tr>
2411 </table>
2412 </td>
2413 </tr>
2414 </table>
2415 <table cellspacing=5 cellpadding=0 border=0>
2416 <tr>
2417 <td>
2418 &nbsp;
2419 </td>
2420 <td>
2421
2422 <p>
2423 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>.
2424 <p>
2425 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>
2426 </tr>
2427 </table>
2428 <hr size="1"><address style="align: right;"><small>Generated on Thu Sep 16 18:10:52 2004 for libSPF v1.0 by
2429 <a href="http://www.doxygen.org/index.html">
2430 <img src="doxygen.png" alt="doxygen" align="middle" border=0 ></a> 1.3.8 </small></address>
2431 </body>
2432 </html>