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

File Contents

# User Rev Content
1 root 1.1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2     <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3     <title>libSPF v1.0: spf.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>spf.h File Reference</h1><code>#include &lt;sys/types.h&gt;</code><br>
10     <code>#include &lt;netinet/in.h&gt;</code><br>
11     <code>#include &lt;arpa/inet.h&gt;</code><br>
12    
13     <p>
14     Include dependency graph for spf.h:<p><center><img src="spf_8h__incl.png" border="0" usemap="#spf.h_map" alt="Include dependency graph"></center>
15    
16     <p>
17     This graph shows which files directly or indirectly include this file:<p><center><img src="spf_8h__dep__incl.png" border="0" usemap="#spf.hdep_map" alt="Included by dependency graph"></center>
18     <map name="spf.hdep_map">
19     <area href="dns_8c.html" shape="rect" coords="7,17,49,35" alt="">
20     <area href="util_8h.html" shape="rect" coords="73,86,111,105" alt="">
21     <area href="main_8h.html" shape="rect" coords="123,155,173,174" alt="">
22     <area href="macro_8c.html" shape="rect" coords="209,17,268,35" alt="">
23     <area href="macro_8h.html" shape="rect" coords="185,86,244,105" alt="">
24     <area href="main_8c.html" shape="rect" coords="135,17,185,35" alt="">
25     <area href="util_8c.html" shape="rect" coords="73,17,111,35" alt="">
26     </map>
27    
28     <p>
29     <a href="spf_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
30     <tr><td></td></tr>
31     <tr><td colspan=2><br><h2>Data Structures</h2></td></tr>
32     <tr><td class="memItemLeft" nowrap align=right valign=top>struct &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structspf__result__t.html">spf_result_t</a></td></tr>
33    
34     <tr><td class="memItemLeft" nowrap align=right valign=top>struct &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structpolicy__addr__s.html">policy_addr_s</a></td></tr>
35    
36     <tr><td class="memItemLeft" nowrap align=right valign=top>struct &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structspf__config__s.html">spf_config_s</a></td></tr>
37    
38     <tr><td class="memItemLeft" nowrap align=right valign=top>struct &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structstrbuf__node__s.html">strbuf_node_s</a></td></tr>
39    
40     <tr><td class="memItemLeft" nowrap align=right valign=top>struct &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structstrbuf__s.html">strbuf_s</a></td></tr>
41    
42     <tr><td class="memItemLeft" nowrap align=right valign=top>struct &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structsplit__str__node__s.html">split_str_node_s</a></td></tr>
43    
44     <tr><td class="memItemLeft" nowrap align=right valign=top>struct &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structsplit__str__s.html">split_str_s</a></td></tr>
45    
46     <tr><td class="memItemLeft" nowrap align=right valign=top>struct &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="structpeer__info__s.html">peer_info_s</a></td></tr>
47    
48     <tr><td colspan=2><br><h2>Defines</h2></td></tr>
49     <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a0">_SPF_H</a>&nbsp;&nbsp;&nbsp;1</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="spf_8h.html#a1">SPF_VERSION</a>&nbsp;&nbsp;&nbsp;1</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="spf_8h.html#a2">SPF_MAX_CNAME</a>&nbsp;&nbsp;&nbsp;5</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="spf_8h.html#a3">SPF_MAX_DEBUG</a>&nbsp;&nbsp;&nbsp;2048</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="spf_8h.html#a4">SPF_MAX_MACRO</a>&nbsp;&nbsp;&nbsp;1024</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="spf_8h.html#a5">SPF_MAX_STR</a>&nbsp;&nbsp;&nbsp;4096</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="spf_8h.html#a6">SPF_MAX_DELIM</a>&nbsp;&nbsp;&nbsp;255</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="spf_8h.html#a7">SPF_MAX_LOCAL_PART</a>&nbsp;&nbsp;&nbsp;256</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="spf_8h.html#a8">SPF_MAX_ENV_SENDER</a>&nbsp;&nbsp;&nbsp;512</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="spf_8h.html#a9">SPF_MAX_CUR_DOM</a>&nbsp;&nbsp;&nbsp;256</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="spf_8h.html#a10">SPF_MAX_UTC_TIME</a>&nbsp;&nbsp;&nbsp;22</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="spf_8h.html#a11">SPF_MAX_IP_ADDR</a>&nbsp;&nbsp;&nbsp;17</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="spf_8h.html#a12">SPF_MAX_IP_VER</a>&nbsp;&nbsp;&nbsp;8</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="spf_8h.html#a13">SPF_MAX_ENV_HELO</a>&nbsp;&nbsp;&nbsp;512</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="spf_8h.html#a14">SPF_MAX_HNAME</a>&nbsp;&nbsp;&nbsp;256</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="spf_8h.html#a15">SPF_MAX_RESULT</a>&nbsp;&nbsp;&nbsp;64</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="spf_8h.html#a16">SPF_MAX_ERROR</a>&nbsp;&nbsp;&nbsp;96</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="spf_8h.html#a17">SPF_MAX_EXPLAIN_S</a>&nbsp;&nbsp;&nbsp;256</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="spf_8h.html#a18">SPF_MAX_ENV_RECV</a>&nbsp;&nbsp;&nbsp;512</td></tr>
86    
87     <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a19">SPF_MAX_RES_STR</a>&nbsp;&nbsp;&nbsp;12</td></tr>
88    
89     <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a20">SPF_MAX_MECHANISM</a>&nbsp;&nbsp;&nbsp;256</td></tr>
90    
91     <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a21">SPF_MAX_HEADER</a>&nbsp;&nbsp;&nbsp;512</td></tr>
92    
93     <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a22">SPF_MAX_SMTP_RES</a>&nbsp;&nbsp;&nbsp;256</td></tr>
94    
95     <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a23">HR_RFC2822</a>&nbsp;&nbsp;&nbsp;"Received-SPF: "</td></tr>
96    
97     <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a24">HR_PASS</a>&nbsp;&nbsp;&nbsp;"pass"</td></tr>
98    
99     <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a25">HR_NONE</a>&nbsp;&nbsp;&nbsp;"none"</td></tr>
100    
101     <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a26">HR_S_FAIL</a>&nbsp;&nbsp;&nbsp;"softfail"</td></tr>
102    
103     <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a27">HR_H_FAIL</a>&nbsp;&nbsp;&nbsp;"fail"</td></tr>
104    
105     <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a28">HR_ERROR</a>&nbsp;&nbsp;&nbsp;"error"</td></tr>
106    
107     <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a29">HR_NEUTRAL</a>&nbsp;&nbsp;&nbsp;"neutral"</td></tr>
108    
109     <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a30">HR_UNKNOWN</a>&nbsp;&nbsp;&nbsp;"unknown"</td></tr>
110    
111     <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a31">HR_UNMECH</a>&nbsp;&nbsp;&nbsp;"unknown mechanism"</td></tr>
112    
113     <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a32">SPF_EXPLAIN</a></td></tr>
114    
115     <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a33">SPF_GUESS</a>&nbsp;&nbsp;&nbsp;"v=spf1 a/24 mx/24 ptr "</td></tr>
116    
117     <tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a34">SPF_TRUSTED</a>&nbsp;&nbsp;&nbsp;"v=spf1 include:spf.trusted-forwarder.org "</td></tr>
118    
119     <tr><td colspan=2><br><h2>Typedefs</h2></td></tr>
120     <tr><td class="memItemLeft" nowrap align=right valign=top>typedef enum <a class="el" href="spf_8h.html#a35">SPF_BOOL</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a35">SPF_BOOL</a></td></tr>
121    
122     <tr><td class="memItemLeft" nowrap align=right valign=top>typedef enum <a class="el" href="spf_8h.html#a36">SPF_RESULT</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a36">SPF_RESULT</a></td></tr>
123    
124     <tr><td class="memItemLeft" nowrap align=right valign=top>typedef enum <a class="el" href="spf_8h.html#a37">SPF_ACTION</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a37">SPF_ACTION</a></td></tr>
125    
126     <tr><td class="memItemLeft" nowrap align=right valign=top>typedef enum <a class="el" href="spf_8h.html#a38">SPF_MECHANISM</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a38">SPF_MECHANISM</a></td></tr>
127    
128     <tr><td class="memItemLeft" nowrap align=right valign=top>typedef <a class="el" href="structspf__result__t.html">spf_result_t</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a39">spf_result_t</a></td></tr>
129    
130     <tr><td class="memItemLeft" nowrap align=right valign=top>typedef <a class="el" href="structpolicy__addr__s.html">policy_addr_s</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a40">policy_addr_t</a></td></tr>
131    
132     <tr><td class="memItemLeft" nowrap align=right valign=top>typedef <a class="el" href="structspf__config__s.html">spf_config_s</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a41">spf_config_t</a></td></tr>
133    
134     <tr><td class="memItemLeft" nowrap align=right valign=top>typedef <a class="el" href="structstrbuf__node__s.html">strbuf_node_s</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a42">strbuf_node_t</a></td></tr>
135    
136     <tr><td class="memItemLeft" nowrap align=right valign=top>typedef <a class="el" href="structstrbuf__s.html">strbuf_s</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a43">strbuf_t</a></td></tr>
137    
138     <tr><td class="memItemLeft" nowrap align=right valign=top>typedef <a class="el" href="structsplit__str__node__s.html">split_str_node_s</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a44">split_str_node_t</a></td></tr>
139    
140     <tr><td class="memItemLeft" nowrap align=right valign=top>typedef <a class="el" href="structsplit__str__s.html">split_str_s</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a45">split_str_t</a></td></tr>
141    
142     <tr><td class="memItemLeft" nowrap align=right valign=top>typedef <a class="el" href="structpeer__info__s.html">peer_info_s</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a46">peer_info_t</a></td></tr>
143    
144     <tr><td colspan=2><br><h2>Enumerations</h2></td></tr>
145     <tr><td class="memItemLeft" nowrap align=right valign=top>enum &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a87">SPF_BOOL</a> { <a class="el" href="spf_8h.html#a87a49">SPF_FALSE</a> = 0,
146     <a class="el" href="spf_8h.html#a87a50">SPF_TRUE</a>
147     }</td></tr>
148    
149     <tr><td class="memItemLeft" nowrap align=right valign=top>enum &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a88">SPF_RESULT</a> { <br>
150     &nbsp;&nbsp;<a class="el" href="spf_8h.html#a88a51">SPF_PASS</a> = 0,
151     <a class="el" href="spf_8h.html#a88a52">SPF_NONE</a>,
152     <a class="el" href="spf_8h.html#a88a53">SPF_S_FAIL</a>,
153     <a class="el" href="spf_8h.html#a88a54">SPF_H_FAIL</a>,
154     <br>
155     &nbsp;&nbsp;<a class="el" href="spf_8h.html#a88a55">SPF_ERROR</a>,
156     <a class="el" href="spf_8h.html#a88a56">SPF_NEUTRAL</a>,
157     <a class="el" href="spf_8h.html#a88a57">SPF_UNKNOWN</a>,
158     <a class="el" href="spf_8h.html#a88a58">SPF_UNMECH</a>
159     <br>
160     }</td></tr>
161    
162     <tr><td class="memItemLeft" nowrap align=right valign=top>enum &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a89">SPF_ACTION</a> { <a class="el" href="spf_8h.html#a89a59">DEFER</a> = 0,
163     <a class="el" href="spf_8h.html#a89a60">TARPIT</a>,
164     <a class="el" href="spf_8h.html#a89a61">ALLOW</a>,
165     <a class="el" href="spf_8h.html#a89a62">REJECT</a>
166     }</td></tr>
167    
168     <tr><td class="memItemLeft" nowrap align=right valign=top>enum &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a90">SPF_MECHANISM</a> { <br>
169     &nbsp;&nbsp;<a class="el" href="spf_8h.html#a90a63">NO_POLICY</a> = 0,
170     <a class="el" href="spf_8h.html#a90a64">VERSION</a>,
171     <a class="el" href="spf_8h.html#a90a65">ALL</a>,
172     <a class="el" href="spf_8h.html#a90a66">INCLUDE</a>,
173     <br>
174     &nbsp;&nbsp;<a class="el" href="spf_8h.html#a90a67">A</a>,
175     <a class="el" href="spf_8h.html#a90a68">MX</a>,
176     <a class="el" href="spf_8h.html#a90a69">PTR</a>,
177     <a class="el" href="spf_8h.html#a90a70">IP4</a>,
178     <br>
179     &nbsp;&nbsp;<a class="el" href="spf_8h.html#a90a71">IP6</a>,
180     <a class="el" href="spf_8h.html#a90a72">EXISTS</a>,
181     <a class="el" href="spf_8h.html#a90a73">REDIRECT</a>,
182     <a class="el" href="spf_8h.html#a90a74">EXPLAIN</a>,
183     <br>
184     &nbsp;&nbsp;<a class="el" href="spf_8h.html#a90a75">DEFAULT</a>,
185     <a class="el" href="spf_8h.html#a90a76">UNMECH</a>
186     <br>
187     }</td></tr>
188    
189     <tr><td colspan=2><br><h2>Functions</h2></td></tr>
190     <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a77">SPF_init</a> (const char *, const char *, const char *, const char *, const char *, u_int32_t, u_int32_t)</td></tr>
191    
192     <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a78">SPF_close</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *)</td></tr>
193    
194     <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="spf_8h.html#a79">SPF_policy_main</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *)</td></tr>
195    
196     <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="spf_8h.html#a80">SPF_policy_main_rec</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *)</td></tr>
197    
198     <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="spf_8h.html#a81">SPF_parse_policy</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *, const char *)</td></tr>
199    
200     <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a82">SPF_result</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *)</td></tr>
201    
202     <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="spf_8h.html#a83">SPF_smtp_from</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *, const char *)</td></tr>
203    
204     <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="spf_8h.html#a84">SPF_smtp_helo</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *, const char *)</td></tr>
205    
206     <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a85">SPF_build_header</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *)</td></tr>
207    
208     <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a86">SPF_get_explain</a> (<a class="el" href="structpeer__info__s.html">peer_info_t</a> *)</td></tr>
209    
210     <tr><td colspan=2><br><h2>Variables</h2></td></tr>
211     <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="structspf__config__s.html">spf_config_t</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a47">confg</a></td></tr>
212    
213     <tr><td class="memItemLeft" nowrap align=right valign=top>u_int8_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="spf_8h.html#a48">spf_rlevel</a></td></tr>
214    
215     </table>
216     <hr><h2>Define Documentation</h2>
217     <a class="anchor" name="a0" doxytag="spf.h::_SPF_H" ></a><p>
218     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
219     <tr>
220     <td class="mdRow">
221     <table cellpadding="0" cellspacing="0" border="0">
222     <tr>
223     <td class="md" nowrap valign="top"> #define _SPF_H&nbsp;&nbsp;&nbsp;1 </td>
224     </tr>
225     </table>
226     </td>
227     </tr>
228     </table>
229     <table cellspacing=5 cellpadding=0 border=0>
230     <tr>
231     <td>
232     &nbsp;
233     </td>
234     <td>
235    
236     <p>
237     Definition at line <a class="el" href="spf_8h-source.html#l00047">47</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>. </td>
238     </tr>
239     </table>
240     <a class="anchor" name="a28" doxytag="spf.h::HR_ERROR" ></a><p>
241     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
242     <tr>
243     <td class="mdRow">
244     <table cellpadding="0" cellspacing="0" border="0">
245     <tr>
246     <td class="md" nowrap valign="top"> #define HR_ERROR&nbsp;&nbsp;&nbsp;"error" </td>
247     </tr>
248     </table>
249     </td>
250     </tr>
251     </table>
252     <table cellspacing=5 cellpadding=0 border=0>
253     <tr>
254     <td>
255     &nbsp;
256     </td>
257     <td>
258    
259     <p>
260     Definition at line <a class="el" href="spf_8h-source.html#l00100">100</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
261     <p>
262     Referenced by <a class="el" href="main_8c-source.html#l00081">SPF_init()</a>. </td>
263     </tr>
264     </table>
265     <a class="anchor" name="a27" doxytag="spf.h::HR_H_FAIL" ></a><p>
266     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
267     <tr>
268     <td class="mdRow">
269     <table cellpadding="0" cellspacing="0" border="0">
270     <tr>
271     <td class="md" nowrap valign="top"> #define HR_H_FAIL&nbsp;&nbsp;&nbsp;"fail" </td>
272     </tr>
273     </table>
274     </td>
275     </tr>
276     </table>
277     <table cellspacing=5 cellpadding=0 border=0>
278     <tr>
279     <td>
280     &nbsp;
281     </td>
282     <td>
283    
284     <p>
285     Definition at line <a class="el" href="spf_8h-source.html#l00099">99</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
286     <p>
287     Referenced by <a class="el" href="main_8c-source.html#l00081">SPF_init()</a>. </td>
288     </tr>
289     </table>
290     <a class="anchor" name="a29" doxytag="spf.h::HR_NEUTRAL" ></a><p>
291     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
292     <tr>
293     <td class="mdRow">
294     <table cellpadding="0" cellspacing="0" border="0">
295     <tr>
296     <td class="md" nowrap valign="top"> #define HR_NEUTRAL&nbsp;&nbsp;&nbsp;"neutral" </td>
297     </tr>
298     </table>
299     </td>
300     </tr>
301     </table>
302     <table cellspacing=5 cellpadding=0 border=0>
303     <tr>
304     <td>
305     &nbsp;
306     </td>
307     <td>
308    
309     <p>
310     Definition at line <a class="el" href="spf_8h-source.html#l00101">101</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
311     <p>
312     Referenced by <a class="el" href="main_8c-source.html#l00081">SPF_init()</a>. </td>
313     </tr>
314     </table>
315     <a class="anchor" name="a25" doxytag="spf.h::HR_NONE" ></a><p>
316     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
317     <tr>
318     <td class="mdRow">
319     <table cellpadding="0" cellspacing="0" border="0">
320     <tr>
321     <td class="md" nowrap valign="top"> #define HR_NONE&nbsp;&nbsp;&nbsp;"none" </td>
322     </tr>
323     </table>
324     </td>
325     </tr>
326     </table>
327     <table cellspacing=5 cellpadding=0 border=0>
328     <tr>
329     <td>
330     &nbsp;
331     </td>
332     <td>
333    
334     <p>
335     Definition at line <a class="el" href="spf_8h-source.html#l00097">97</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
336     <p>
337     Referenced by <a class="el" href="main_8c-source.html#l00081">SPF_init()</a>. </td>
338     </tr>
339     </table>
340     <a class="anchor" name="a24" doxytag="spf.h::HR_PASS" ></a><p>
341     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
342     <tr>
343     <td class="mdRow">
344     <table cellpadding="0" cellspacing="0" border="0">
345     <tr>
346     <td class="md" nowrap valign="top"> #define HR_PASS&nbsp;&nbsp;&nbsp;"pass" </td>
347     </tr>
348     </table>
349     </td>
350     </tr>
351     </table>
352     <table cellspacing=5 cellpadding=0 border=0>
353     <tr>
354     <td>
355     &nbsp;
356     </td>
357     <td>
358    
359     <p>
360     Definition at line <a class="el" href="spf_8h-source.html#l00096">96</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
361     <p>
362     Referenced by <a class="el" href="main_8c-source.html#l00081">SPF_init()</a>. </td>
363     </tr>
364     </table>
365     <a class="anchor" name="a23" doxytag="spf.h::HR_RFC2822" ></a><p>
366     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
367     <tr>
368     <td class="mdRow">
369     <table cellpadding="0" cellspacing="0" border="0">
370     <tr>
371     <td class="md" nowrap valign="top"> #define HR_RFC2822&nbsp;&nbsp;&nbsp;"Received-SPF: " </td>
372     </tr>
373     </table>
374     </td>
375     </tr>
376     </table>
377     <table cellspacing=5 cellpadding=0 border=0>
378     <tr>
379     <td>
380     &nbsp;
381     </td>
382     <td>
383    
384     <p>
385     Definition at line <a class="el" href="spf_8h-source.html#l00095">95</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>. </td>
386     </tr>
387     </table>
388     <a class="anchor" name="a26" doxytag="spf.h::HR_S_FAIL" ></a><p>
389     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
390     <tr>
391     <td class="mdRow">
392     <table cellpadding="0" cellspacing="0" border="0">
393     <tr>
394     <td class="md" nowrap valign="top"> #define HR_S_FAIL&nbsp;&nbsp;&nbsp;"softfail" </td>
395     </tr>
396     </table>
397     </td>
398     </tr>
399     </table>
400     <table cellspacing=5 cellpadding=0 border=0>
401     <tr>
402     <td>
403     &nbsp;
404     </td>
405     <td>
406    
407     <p>
408     Definition at line <a class="el" href="spf_8h-source.html#l00098">98</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
409     <p>
410     Referenced by <a class="el" href="main_8c-source.html#l00081">SPF_init()</a>. </td>
411     </tr>
412     </table>
413     <a class="anchor" name="a30" doxytag="spf.h::HR_UNKNOWN" ></a><p>
414     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
415     <tr>
416     <td class="mdRow">
417     <table cellpadding="0" cellspacing="0" border="0">
418     <tr>
419     <td class="md" nowrap valign="top"> #define HR_UNKNOWN&nbsp;&nbsp;&nbsp;"unknown" </td>
420     </tr>
421     </table>
422     </td>
423     </tr>
424     </table>
425     <table cellspacing=5 cellpadding=0 border=0>
426     <tr>
427     <td>
428     &nbsp;
429     </td>
430     <td>
431    
432     <p>
433     Definition at line <a class="el" href="spf_8h-source.html#l00102">102</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
434     <p>
435     Referenced by <a class="el" href="main_8c-source.html#l00081">SPF_init()</a>. </td>
436     </tr>
437     </table>
438     <a class="anchor" name="a31" doxytag="spf.h::HR_UNMECH" ></a><p>
439     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
440     <tr>
441     <td class="mdRow">
442     <table cellpadding="0" cellspacing="0" border="0">
443     <tr>
444     <td class="md" nowrap valign="top"> #define HR_UNMECH&nbsp;&nbsp;&nbsp;"unknown mechanism" </td>
445     </tr>
446     </table>
447     </td>
448     </tr>
449     </table>
450     <table cellspacing=5 cellpadding=0 border=0>
451     <tr>
452     <td>
453     &nbsp;
454     </td>
455     <td>
456    
457     <p>
458     Definition at line <a class="el" href="spf_8h-source.html#l00103">103</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
459     <p>
460     Referenced by <a class="el" href="main_8c-source.html#l00081">SPF_init()</a>. </td>
461     </tr>
462     </table>
463     <a class="anchor" name="a32" doxytag="spf.h::SPF_EXPLAIN" ></a><p>
464     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
465     <tr>
466     <td class="mdRow">
467     <table cellpadding="0" cellspacing="0" border="0">
468     <tr>
469     <td class="md" nowrap valign="top"> #define SPF_EXPLAIN </td>
470     </tr>
471     </table>
472     </td>
473     </tr>
474     </table>
475     <table cellspacing=5 cellpadding=0 border=0>
476     <tr>
477     <td>
478     &nbsp;
479     </td>
480     <td>
481    
482     <p>
483     <b>Value:</b><pre class="fragment"><div><span class="stringliteral">"See http://spf.pobox.com/why.html?sender=%{S}&amp;"</span> \
484     <span class="stringliteral">"ip=%{I}&amp;receiver=%{xR}"</span>
485     </div></pre>Definition at line <a class="el" href="spf_8h-source.html#l00106">106</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
486     <p>
487     Referenced by <a class="el" href="main_8c-source.html#l01310">SPF_get_explain()</a>. </td>
488     </tr>
489     </table>
490     <a class="anchor" name="a33" doxytag="spf.h::SPF_GUESS" ></a><p>
491     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
492     <tr>
493     <td class="mdRow">
494     <table cellpadding="0" cellspacing="0" border="0">
495     <tr>
496     <td class="md" nowrap valign="top"> #define SPF_GUESS&nbsp;&nbsp;&nbsp;"v=spf1 a/24 mx/24 ptr " </td>
497     </tr>
498     </table>
499     </td>
500     </tr>
501     </table>
502     <table cellspacing=5 cellpadding=0 border=0>
503     <tr>
504     <td>
505     &nbsp;
506     </td>
507     <td>
508    
509     <p>
510     Definition at line <a class="el" href="spf_8h-source.html#l00110">110</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
511     <p>
512     Referenced by <a class="el" href="main_8c-source.html#l00081">SPF_init()</a>. </td>
513     </tr>
514     </table>
515     <a class="anchor" name="a2" doxytag="spf.h::SPF_MAX_CNAME" ></a><p>
516     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
517     <tr>
518     <td class="mdRow">
519     <table cellpadding="0" cellspacing="0" border="0">
520     <tr>
521     <td class="md" nowrap valign="top"> #define SPF_MAX_CNAME&nbsp;&nbsp;&nbsp;5 </td>
522     </tr>
523     </table>
524     </td>
525     </tr>
526     </table>
527     <table cellspacing=5 cellpadding=0 border=0>
528     <tr>
529     <td>
530     &nbsp;
531     </td>
532     <td>
533    
534     <p>
535     Definition at line <a class="el" href="spf_8h-source.html#l00069">69</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>. </td>
536     </tr>
537     </table>
538     <a class="anchor" name="a9" doxytag="spf.h::SPF_MAX_CUR_DOM" ></a><p>
539     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
540     <tr>
541     <td class="mdRow">
542     <table cellpadding="0" cellspacing="0" border="0">
543     <tr>
544     <td class="md" nowrap valign="top"> #define SPF_MAX_CUR_DOM&nbsp;&nbsp;&nbsp;256 </td>
545     </tr>
546     </table>
547     </td>
548     </tr>
549     </table>
550     <table cellspacing=5 cellpadding=0 border=0>
551     <tr>
552     <td>
553     &nbsp;
554     </td>
555     <td>
556    
557     <p>
558     Definition at line <a class="el" href="spf_8h-source.html#l00077">77</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>. </td>
559     </tr>
560     </table>
561     <a class="anchor" name="a3" doxytag="spf.h::SPF_MAX_DEBUG" ></a><p>
562     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
563     <tr>
564     <td class="mdRow">
565     <table cellpadding="0" cellspacing="0" border="0">
566     <tr>
567     <td class="md" nowrap valign="top"> #define SPF_MAX_DEBUG&nbsp;&nbsp;&nbsp;2048 </td>
568     </tr>
569     </table>
570     </td>
571     </tr>
572     </table>
573     <table cellspacing=5 cellpadding=0 border=0>
574     <tr>
575     <td>
576     &nbsp;
577     </td>
578     <td>
579    
580     <p>
581     Definition at line <a class="el" href="spf_8h-source.html#l00070">70</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
582     <p>
583     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>, and <a class="el" href="util_8c-source.html#l00326">UTIL_log_result()</a>. </td>
584     </tr>
585     </table>
586     <a class="anchor" name="a6" doxytag="spf.h::SPF_MAX_DELIM" ></a><p>
587     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
588     <tr>
589     <td class="mdRow">
590     <table cellpadding="0" cellspacing="0" border="0">
591     <tr>
592     <td class="md" nowrap valign="top"> #define SPF_MAX_DELIM&nbsp;&nbsp;&nbsp;255 </td>
593     </tr>
594     </table>
595     </td>
596     </tr>
597     </table>
598     <table cellspacing=5 cellpadding=0 border=0>
599     <tr>
600     <td>
601     &nbsp;
602     </td>
603     <td>
604    
605     <p>
606     Definition at line <a class="el" href="spf_8h-source.html#l00073">73</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
607     <p>
608     Referenced by <a class="el" href="util_8c-source.html#l00751">UTIL_count_delim()</a>. </td>
609     </tr>
610     </table>
611     <a class="anchor" name="a13" doxytag="spf.h::SPF_MAX_ENV_HELO" ></a><p>
612     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
613     <tr>
614     <td class="mdRow">
615     <table cellpadding="0" cellspacing="0" border="0">
616     <tr>
617     <td class="md" nowrap valign="top"> #define SPF_MAX_ENV_HELO&nbsp;&nbsp;&nbsp;512 </td>
618     </tr>
619     </table>
620     </td>
621     </tr>
622     </table>
623     <table cellspacing=5 cellpadding=0 border=0>
624     <tr>
625     <td>
626     &nbsp;
627     </td>
628     <td>
629    
630     <p>
631     Definition at line <a class="el" href="spf_8h-source.html#l00081">81</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
632     <p>
633     Referenced by <a class="el" href="macro_8c-source.html#l00301">MACRO_process()</a>, and <a class="el" href="main_8c-source.html#l01456">SPF_smtp_from()</a>. </td>
634     </tr>
635     </table>
636     <a class="anchor" name="a18" doxytag="spf.h::SPF_MAX_ENV_RECV" ></a><p>
637     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
638     <tr>
639     <td class="mdRow">
640     <table cellpadding="0" cellspacing="0" border="0">
641     <tr>
642     <td class="md" nowrap valign="top"> #define SPF_MAX_ENV_RECV&nbsp;&nbsp;&nbsp;512 </td>
643     </tr>
644     </table>
645     </td>
646     </tr>
647     </table>
648     <table cellspacing=5 cellpadding=0 border=0>
649     <tr>
650     <td>
651     &nbsp;
652     </td>
653     <td>
654    
655     <p>
656     Definition at line <a class="el" href="spf_8h-source.html#l00087">87</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>. </td>
657     </tr>
658     </table>
659     <a class="anchor" name="a8" doxytag="spf.h::SPF_MAX_ENV_SENDER" ></a><p>
660     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
661     <tr>
662     <td class="mdRow">
663     <table cellpadding="0" cellspacing="0" border="0">
664     <tr>
665     <td class="md" nowrap valign="top"> #define SPF_MAX_ENV_SENDER&nbsp;&nbsp;&nbsp;512 </td>
666     </tr>
667     </table>
668     </td>
669     </tr>
670     </table>
671     <table cellspacing=5 cellpadding=0 border=0>
672     <tr>
673     <td>
674     &nbsp;
675     </td>
676     <td>
677    
678     <p>
679     Definition at line <a class="el" href="spf_8h-source.html#l00076">76</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>. </td>
680     </tr>
681     </table>
682     <a class="anchor" name="a16" doxytag="spf.h::SPF_MAX_ERROR" ></a><p>
683     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
684     <tr>
685     <td class="mdRow">
686     <table cellpadding="0" cellspacing="0" border="0">
687     <tr>
688     <td class="md" nowrap valign="top"> #define SPF_MAX_ERROR&nbsp;&nbsp;&nbsp;96 </td>
689     </tr>
690     </table>
691     </td>
692     </tr>
693     </table>
694     <table cellspacing=5 cellpadding=0 border=0>
695     <tr>
696     <td>
697     &nbsp;
698     </td>
699     <td>
700    
701     <p>
702     Definition at line <a class="el" href="spf_8h-source.html#l00085">85</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
703     <p>
704     Referenced by <a class="el" href="dns_8c-source.html#l00217">DNS_query()</a>, <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>, and <a class="el" href="util_8c-source.html#l01309">UTIL_assoc_prefix()</a>. </td>
705     </tr>
706     </table>
707     <a class="anchor" name="a17" doxytag="spf.h::SPF_MAX_EXPLAIN_S" ></a><p>
708     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
709     <tr>
710     <td class="mdRow">
711     <table cellpadding="0" cellspacing="0" border="0">
712     <tr>
713     <td class="md" nowrap valign="top"> #define SPF_MAX_EXPLAIN_S&nbsp;&nbsp;&nbsp;256 </td>
714     </tr>
715     </table>
716     </td>
717     </tr>
718     </table>
719     <table cellspacing=5 cellpadding=0 border=0>
720     <tr>
721     <td>
722     &nbsp;
723     </td>
724     <td>
725    
726     <p>
727     Definition at line <a class="el" href="spf_8h-source.html#l00086">86</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>. </td>
728     </tr>
729     </table>
730     <a class="anchor" name="a21" doxytag="spf.h::SPF_MAX_HEADER" ></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 SPF_MAX_HEADER&nbsp;&nbsp;&nbsp;512 </td>
737     </tr>
738     </table>
739     </td>
740     </tr>
741     </table>
742     <table cellspacing=5 cellpadding=0 border=0>
743     <tr>
744     <td>
745     &nbsp;
746     </td>
747     <td>
748    
749     <p>
750     Definition at line <a class="el" href="spf_8h-source.html#l00091">91</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
751     <p>
752     Referenced by <a class="el" href="main_8c-source.html#l01342">SPF_build_header()</a>, and <a class="el" href="main_8c-source.html#l01249">SPF_result()</a>. </td>
753     </tr>
754     </table>
755     <a class="anchor" name="a14" doxytag="spf.h::SPF_MAX_HNAME" ></a><p>
756     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
757     <tr>
758     <td class="mdRow">
759     <table cellpadding="0" cellspacing="0" border="0">
760     <tr>
761     <td class="md" nowrap valign="top"> #define SPF_MAX_HNAME&nbsp;&nbsp;&nbsp;256 </td>
762     </tr>
763     </table>
764     </td>
765     </tr>
766     </table>
767     <table cellspacing=5 cellpadding=0 border=0>
768     <tr>
769     <td>
770     &nbsp;
771     </td>
772     <td>
773    
774     <p>
775     Definition at line <a class="el" href="spf_8h-source.html#l00083">83</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
776     <p>
777     Referenced by <a class="el" href="macro_8c-source.html#l00301">MACRO_process()</a>, <a class="el" href="util_8c-source.html#l00980">UTIL_a_cmp()</a>, <a class="el" href="util_8c-source.html#l01555">UTIL_get_mech_prefix()</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>
778     </tr>
779     </table>
780     <a class="anchor" name="a11" doxytag="spf.h::SPF_MAX_IP_ADDR" ></a><p>
781     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
782     <tr>
783     <td class="mdRow">
784     <table cellpadding="0" cellspacing="0" border="0">
785     <tr>
786     <td class="md" nowrap valign="top"> #define SPF_MAX_IP_ADDR&nbsp;&nbsp;&nbsp;17 </td>
787     </tr>
788     </table>
789     </td>
790     </tr>
791     </table>
792     <table cellspacing=5 cellpadding=0 border=0>
793     <tr>
794     <td>
795     &nbsp;
796     </td>
797     <td>
798    
799     <p>
800     Definition at line <a class="el" href="spf_8h-source.html#l00079">79</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
801     <p>
802     Referenced by <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="util_8c-source.html#l01961">UTIL_cidr_cmp()</a>, and <a class="el" href="util_8c-source.html#l02100">UTIL_validate_hostname()</a>. </td>
803     </tr>
804     </table>
805     <a class="anchor" name="a12" doxytag="spf.h::SPF_MAX_IP_VER" ></a><p>
806     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
807     <tr>
808     <td class="mdRow">
809     <table cellpadding="0" cellspacing="0" border="0">
810     <tr>
811     <td class="md" nowrap valign="top"> #define SPF_MAX_IP_VER&nbsp;&nbsp;&nbsp;8 </td>
812     </tr>
813     </table>
814     </td>
815     </tr>
816     </table>
817     <table cellspacing=5 cellpadding=0 border=0>
818     <tr>
819     <td>
820     &nbsp;
821     </td>
822     <td>
823    
824     <p>
825     Definition at line <a class="el" href="spf_8h-source.html#l00080">80</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>. </td>
826     </tr>
827     </table>
828     <a class="anchor" name="a7" doxytag="spf.h::SPF_MAX_LOCAL_PART" ></a><p>
829     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
830     <tr>
831     <td class="mdRow">
832     <table cellpadding="0" cellspacing="0" border="0">
833     <tr>
834     <td class="md" nowrap valign="top"> #define SPF_MAX_LOCAL_PART&nbsp;&nbsp;&nbsp;256 </td>
835     </tr>
836     </table>
837     </td>
838     </tr>
839     </table>
840     <table cellspacing=5 cellpadding=0 border=0>
841     <tr>
842     <td>
843     &nbsp;
844     </td>
845     <td>
846    
847     <p>
848     Definition at line <a class="el" href="spf_8h-source.html#l00075">75</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
849     <p>
850     Referenced by <a class="el" href="macro_8c-source.html#l00301">MACRO_process()</a>, <a class="el" href="main_8c-source.html#l00081">SPF_init()</a>, and <a class="el" href="main_8c-source.html#l01456">SPF_smtp_from()</a>. </td>
851     </tr>
852     </table>
853     <a class="anchor" name="a4" doxytag="spf.h::SPF_MAX_MACRO" ></a><p>
854     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
855     <tr>
856     <td class="mdRow">
857     <table cellpadding="0" cellspacing="0" border="0">
858     <tr>
859     <td class="md" nowrap valign="top"> #define SPF_MAX_MACRO&nbsp;&nbsp;&nbsp;1024 </td>
860     </tr>
861     </table>
862     </td>
863     </tr>
864     </table>
865     <table cellspacing=5 cellpadding=0 border=0>
866     <tr>
867     <td>
868     &nbsp;
869     </td>
870     <td>
871    
872     <p>
873     Definition at line <a class="el" href="spf_8h-source.html#l00071">71</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
874     <p>
875     Referenced by <a class="el" href="macro_8c-source.html#l00505">MACRO_eatmore()</a>. </td>
876     </tr>
877     </table>
878     <a class="anchor" name="a20" doxytag="spf.h::SPF_MAX_MECHANISM" ></a><p>
879     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
880     <tr>
881     <td class="mdRow">
882     <table cellpadding="0" cellspacing="0" border="0">
883     <tr>
884     <td class="md" nowrap valign="top"> #define SPF_MAX_MECHANISM&nbsp;&nbsp;&nbsp;256 </td>
885     </tr>
886     </table>
887     </td>
888     </tr>
889     </table>
890     <table cellspacing=5 cellpadding=0 border=0>
891     <tr>
892     <td>
893     &nbsp;
894     </td>
895     <td>
896    
897     <p>
898     Definition at line <a class="el" href="spf_8h-source.html#l00090">90</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
899     <p>
900     Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>. </td>
901     </tr>
902     </table>
903     <a class="anchor" name="a19" doxytag="spf.h::SPF_MAX_RES_STR" ></a><p>
904     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
905     <tr>
906     <td class="mdRow">
907     <table cellpadding="0" cellspacing="0" border="0">
908     <tr>
909     <td class="md" nowrap valign="top"> #define SPF_MAX_RES_STR&nbsp;&nbsp;&nbsp;12 </td>
910     </tr>
911     </table>
912     </td>
913     </tr>
914     </table>
915     <table cellspacing=5 cellpadding=0 border=0>
916     <tr>
917     <td>
918     &nbsp;
919     </td>
920     <td>
921    
922     <p>
923     Definition at line <a class="el" href="spf_8h-source.html#l00088">88</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>. </td>
924     </tr>
925     </table>
926     <a class="anchor" name="a15" doxytag="spf.h::SPF_MAX_RESULT" ></a><p>
927     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
928     <tr>
929     <td class="mdRow">
930     <table cellpadding="0" cellspacing="0" border="0">
931     <tr>
932     <td class="md" nowrap valign="top"> #define SPF_MAX_RESULT&nbsp;&nbsp;&nbsp;64 </td>
933     </tr>
934     </table>
935     </td>
936     </tr>
937     </table>
938     <table cellspacing=5 cellpadding=0 border=0>
939     <tr>
940     <td>
941     &nbsp;
942     </td>
943     <td>
944    
945     <p>
946     Definition at line <a class="el" href="spf_8h-source.html#l00084">84</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>. </td>
947     </tr>
948     </table>
949     <a class="anchor" name="a22" doxytag="spf.h::SPF_MAX_SMTP_RES" ></a><p>
950     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
951     <tr>
952     <td class="mdRow">
953     <table cellpadding="0" cellspacing="0" border="0">
954     <tr>
955     <td class="md" nowrap valign="top"> #define SPF_MAX_SMTP_RES&nbsp;&nbsp;&nbsp;256 </td>
956     </tr>
957     </table>
958     </td>
959     </tr>
960     </table>
961     <table cellspacing=5 cellpadding=0 border=0>
962     <tr>
963     <td>
964     &nbsp;
965     </td>
966     <td>
967    
968     <p>
969     Definition at line <a class="el" href="spf_8h-source.html#l00092">92</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
970     <p>
971     Referenced by <a class="el" href="main_8c-source.html#l01249">SPF_result()</a>. </td>
972     </tr>
973     </table>
974     <a class="anchor" name="a5" doxytag="spf.h::SPF_MAX_STR" ></a><p>
975     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
976     <tr>
977     <td class="mdRow">
978     <table cellpadding="0" cellspacing="0" border="0">
979     <tr>
980     <td class="md" nowrap valign="top"> #define SPF_MAX_STR&nbsp;&nbsp;&nbsp;4096 </td>
981     </tr>
982     </table>
983     </td>
984     </tr>
985     </table>
986     <table cellspacing=5 cellpadding=0 border=0>
987     <tr>
988     <td>
989     &nbsp;
990     </td>
991     <td>
992    
993     <p>
994     Definition at line <a class="el" href="spf_8h-source.html#l00072">72</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
995     <p>
996     Referenced by <a class="el" href="dns_8c-source.html#l00419">DNS_txt_answer()</a>, <a class="el" href="macro_8c-source.html#l00301">MACRO_process()</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>, and <a class="el" href="util_8c-source.html#l00615">UTIL_split_str()</a>. </td>
997     </tr>
998     </table>
999     <a class="anchor" name="a10" doxytag="spf.h::SPF_MAX_UTC_TIME" ></a><p>
1000     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1001     <tr>
1002     <td class="mdRow">
1003     <table cellpadding="0" cellspacing="0" border="0">
1004     <tr>
1005     <td class="md" nowrap valign="top"> #define SPF_MAX_UTC_TIME&nbsp;&nbsp;&nbsp;22 </td>
1006     </tr>
1007     </table>
1008     </td>
1009     </tr>
1010     </table>
1011     <table cellspacing=5 cellpadding=0 border=0>
1012     <tr>
1013     <td>
1014     &nbsp;
1015     </td>
1016     <td>
1017    
1018     <p>
1019     Definition at line <a class="el" href="spf_8h-source.html#l00078">78</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
1020     <p>
1021     Referenced by <a class="el" href="macro_8c-source.html#l00301">MACRO_process()</a>. </td>
1022     </tr>
1023     </table>
1024     <a class="anchor" name="a34" doxytag="spf.h::SPF_TRUSTED" ></a><p>
1025     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1026     <tr>
1027     <td class="mdRow">
1028     <table cellpadding="0" cellspacing="0" border="0">
1029     <tr>
1030     <td class="md" nowrap valign="top"> #define SPF_TRUSTED&nbsp;&nbsp;&nbsp;"v=spf1 include:spf.trusted-forwarder.org " </td>
1031     </tr>
1032     </table>
1033     </td>
1034     </tr>
1035     </table>
1036     <table cellspacing=5 cellpadding=0 border=0>
1037     <tr>
1038     <td>
1039     &nbsp;
1040     </td>
1041     <td>
1042    
1043     <p>
1044     Definition at line <a class="el" href="spf_8h-source.html#l00113">113</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
1045     <p>
1046     Referenced by <a class="el" href="main_8c-source.html#l00081">SPF_init()</a>. </td>
1047     </tr>
1048     </table>
1049     <a class="anchor" name="a1" doxytag="spf.h::SPF_VERSION" ></a><p>
1050     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1051     <tr>
1052     <td class="mdRow">
1053     <table cellpadding="0" cellspacing="0" border="0">
1054     <tr>
1055     <td class="md" nowrap valign="top"> #define SPF_VERSION&nbsp;&nbsp;&nbsp;1 </td>
1056     </tr>
1057     </table>
1058     </td>
1059     </tr>
1060     </table>
1061     <table cellspacing=5 cellpadding=0 border=0>
1062     <tr>
1063     <td>
1064     &nbsp;
1065     </td>
1066     <td>
1067    
1068     <p>
1069     Definition at line <a class="el" href="spf_8h-source.html#l00057">57</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>.
1070     <p>
1071     Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>, and <a class="el" href="util_8c-source.html#l00326">UTIL_log_result()</a>. </td>
1072     </tr>
1073     </table>
1074     <hr><h2>Typedef Documentation</h2>
1075     <a class="anchor" name="a46" doxytag="spf.h::peer_info_t" ></a><p>
1076     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1077     <tr>
1078     <td class="mdRow">
1079     <table cellpadding="0" cellspacing="0" border="0">
1080     <tr>
1081     <td class="md" nowrap valign="top"> typedef struct <a class="el" href="structpeer__info__s.html">peer_info_s</a> <a class="el" href="structpeer__info__s.html">peer_info_t</a> </td>
1082     </tr>
1083     </table>
1084     </td>
1085     </tr>
1086     </table>
1087     <table cellspacing=5 cellpadding=0 border=0>
1088     <tr>
1089     <td>
1090     &nbsp;
1091     </td>
1092     <td>
1093    
1094     <p>
1095    
1096     <p>
1097     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#l00716">DNS_ptr_answer()</a>, <a class="el" href="dns_8c-source.html#l00217">DNS_query()</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#l00313">SPF_close()</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#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#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#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#l01555">UTIL_get_mech_prefix()</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#l02100">UTIL_validate_hostname()</a>, and <a class="el" href="util_8c-source.html#l02038">UTIL_validate_ptr()</a>. </td>
1098     </tr>
1099     </table>
1100     <a class="anchor" name="a40" doxytag="spf.h::policy_addr_t" ></a><p>
1101     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1102     <tr>
1103     <td class="mdRow">
1104     <table cellpadding="0" cellspacing="0" border="0">
1105     <tr>
1106     <td class="md" nowrap valign="top"> typedef struct <a class="el" href="structpolicy__addr__s.html">policy_addr_s</a> <a class="el" href="structpolicy__addr__s.html">policy_addr_t</a> </td>
1107     </tr>
1108     </table>
1109     </td>
1110     </tr>
1111     </table>
1112     <table cellspacing=5 cellpadding=0 border=0>
1113     <tr>
1114     <td>
1115     &nbsp;
1116     </td>
1117     <td>
1118    
1119     <p>
1120    
1121     <p>
1122     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>, <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>, and <a class="el" href="util_8c-source.html#l02100">UTIL_validate_hostname()</a>. </td>
1123     </tr>
1124     </table>
1125     <a class="anchor" name="a37" doxytag="spf.h::SPF_ACTION" ></a><p>
1126     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1127     <tr>
1128     <td class="mdRow">
1129     <table cellpadding="0" cellspacing="0" border="0">
1130     <tr>
1131     <td class="md" nowrap valign="top"> typedef enum <a class="el" href="spf_8h.html#a37">SPF_ACTION</a> <a class="el" href="spf_8h.html#a37">SPF_ACTION</a> </td>
1132     </tr>
1133     </table>
1134     </td>
1135     </tr>
1136     </table>
1137     <table cellspacing=5 cellpadding=0 border=0>
1138     <tr>
1139     <td>
1140     &nbsp;
1141     </td>
1142     <td>
1143    
1144     <p>
1145     </td>
1146     </tr>
1147     </table>
1148     <a class="anchor" name="a35" doxytag="spf.h::SPF_BOOL" ></a><p>
1149     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1150     <tr>
1151     <td class="mdRow">
1152     <table cellpadding="0" cellspacing="0" border="0">
1153     <tr>
1154     <td class="md" nowrap valign="top"> typedef enum <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> </td>
1155     </tr>
1156     </table>
1157     </td>
1158     </tr>
1159     </table>
1160     <table cellspacing=5 cellpadding=0 border=0>
1161     <tr>
1162     <td>
1163     &nbsp;
1164     </td>
1165     <td>
1166    
1167     <p>
1168    
1169     <p>
1170     Referenced by <a class="el" href="main_8c-source.html#l01564">_SPF_clear_holdbufs()</a>, <a class="el" href="util_8c-source.html#l02512">_UTIL_pthread_mutex()</a>, <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>, <a class="el" href="macro_8c-source.html#l00638">MACRO_addbuf()</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="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#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#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>, <a class="el" href="util_8c-source.html#l01135">UTIL_ptr_cmp()</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>
1171     </tr>
1172     </table>
1173     <a class="anchor" name="a41" doxytag="spf.h::spf_config_t" ></a><p>
1174     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1175     <tr>
1176     <td class="mdRow">
1177     <table cellpadding="0" cellspacing="0" border="0">
1178     <tr>
1179     <td class="md" nowrap valign="top"> typedef struct <a class="el" href="structspf__config__s.html">spf_config_s</a> <a class="el" href="structspf__config__s.html">spf_config_t</a> </td>
1180     </tr>
1181     </table>
1182     </td>
1183     </tr>
1184     </table>
1185     <table cellspacing=5 cellpadding=0 border=0>
1186     <tr>
1187     <td>
1188     &nbsp;
1189     </td>
1190     <td>
1191    
1192     <p>
1193     </td>
1194     </tr>
1195     </table>
1196     <a class="anchor" name="a38" doxytag="spf.h::SPF_MECHANISM" ></a><p>
1197     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1198     <tr>
1199     <td class="mdRow">
1200     <table cellpadding="0" cellspacing="0" border="0">
1201     <tr>
1202     <td class="md" nowrap valign="top"> typedef enum <a class="el" href="spf_8h.html#a38">SPF_MECHANISM</a> <a class="el" href="spf_8h.html#a38">SPF_MECHANISM</a> </td>
1203     </tr>
1204     </table>
1205     </td>
1206     </tr>
1207     </table>
1208     <table cellspacing=5 cellpadding=0 border=0>
1209     <tr>
1210     <td>
1211     &nbsp;
1212     </td>
1213     <td>
1214    
1215     <p>
1216    
1217     <p>
1218     Referenced by <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</a>, and <a class="el" href="util_8c-source.html#l01198">UTIL_get_policy_mech()</a>. </td>
1219     </tr>
1220     </table>
1221     <a class="anchor" name="a36" doxytag="spf.h::SPF_RESULT" ></a><p>
1222     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1223     <tr>
1224     <td class="mdRow">
1225     <table cellpadding="0" cellspacing="0" border="0">
1226     <tr>
1227     <td class="md" nowrap valign="top"> typedef enum <a class="el" href="spf_8h.html#a36">SPF_RESULT</a> <a class="el" href="spf_8h.html#a36">SPF_RESULT</a> </td>
1228     </tr>
1229     </table>
1230     </td>
1231     </tr>
1232     </table>
1233     <table cellspacing=5 cellpadding=0 border=0>
1234     <tr>
1235     <td>
1236     &nbsp;
1237     </td>
1238     <td>
1239    
1240     <p>
1241    
1242     <p>
1243     Referenced by <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#l01309">UTIL_assoc_prefix()</a>, and <a class="el" href="util_8c-source.html#l01555">UTIL_get_mech_prefix()</a>. </td>
1244     </tr>
1245     </table>
1246     <a class="anchor" name="a39" doxytag="spf.h::spf_result_t" ></a><p>
1247     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1248     <tr>
1249     <td class="mdRow">
1250     <table cellpadding="0" cellspacing="0" border="0">
1251     <tr>
1252     <td class="md" nowrap valign="top"> typedef struct <a class="el" href="structspf__result__t.html">spf_result_t</a> <a class="el" href="structspf__result__t.html">spf_result_t</a> </td>
1253     </tr>
1254     </table>
1255     </td>
1256     </tr>
1257     </table>
1258     <table cellspacing=5 cellpadding=0 border=0>
1259     <tr>
1260     <td>
1261     &nbsp;
1262     </td>
1263     <td>
1264    
1265     <p>
1266     </td>
1267     </tr>
1268     </table>
1269     <a class="anchor" name="a44" doxytag="spf.h::split_str_node_t" ></a><p>
1270     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1271     <tr>
1272     <td class="mdRow">
1273     <table cellpadding="0" cellspacing="0" border="0">
1274     <tr>
1275     <td class="md" nowrap valign="top"> typedef struct <a class="el" href="structsplit__str__node__s.html">split_str_node_s</a> <a class="el" href="structsplit__str__node__s.html">split_str_node_t</a> </td>
1276     </tr>
1277     </table>
1278     </td>
1279     </tr>
1280     </table>
1281     <table cellspacing=5 cellpadding=0 border=0>
1282     <tr>
1283     <td>
1284     &nbsp;
1285     </td>
1286     <td>
1287    
1288     <p>
1289    
1290     <p>
1291     Referenced by <a class="el" href="util_8c-source.html#l02421">UTIL_addnode()</a>, and <a class="el" href="util_8c-source.html#l02331">UTIL_reverse()</a>. </td>
1292     </tr>
1293     </table>
1294     <a class="anchor" name="a45" doxytag="spf.h::split_str_t" ></a><p>
1295     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1296     <tr>
1297     <td class="mdRow">
1298     <table cellpadding="0" cellspacing="0" border="0">
1299     <tr>
1300     <td class="md" nowrap valign="top"> typedef struct <a class="el" href="structsplit__str__s.html">split_str_s</a> <a class="el" href="structsplit__str__s.html">split_str_t</a> </td>
1301     </tr>
1302     </table>
1303     </td>
1304     </tr>
1305     </table>
1306     <table cellspacing=5 cellpadding=0 border=0>
1307     <tr>
1308     <td>
1309     &nbsp;
1310     </td>
1311     <td>
1312    
1313     <p>
1314    
1315     <p>
1316     Referenced by <a class="el" href="util_8c-source.html#l02421">UTIL_addnode()</a>, and <a class="el" href="util_8c-source.html#l02331">UTIL_reverse()</a>. </td>
1317     </tr>
1318     </table>
1319     <a class="anchor" name="a42" doxytag="spf.h::strbuf_node_t" ></a><p>
1320     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1321     <tr>
1322     <td class="mdRow">
1323     <table cellpadding="0" cellspacing="0" border="0">
1324     <tr>
1325     <td class="md" nowrap valign="top"> typedef struct <a class="el" href="structstrbuf__node__s.html">strbuf_node_s</a> <a class="el" href="structstrbuf__node__s.html">strbuf_node_t</a> </td>
1326     </tr>
1327     </table>
1328     </td>
1329     </tr>
1330     </table>
1331     <table cellspacing=5 cellpadding=0 border=0>
1332     <tr>
1333     <td>
1334     &nbsp;
1335     </td>
1336     <td>
1337    
1338     <p>
1339    
1340     <p>
1341     Referenced by <a class="el" href="macro_8c-source.html#l00638">MACRO_addbuf()</a>, and <a class="el" href="macro_8c-source.html#l00071">MACRO_expand()</a>. </td>
1342     </tr>
1343     </table>
1344     <a class="anchor" name="a43" doxytag="spf.h::strbuf_t" ></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"> typedef struct <a class="el" href="structstrbuf__s.html">strbuf_s</a> <a class="el" href="structstrbuf__s.html">strbuf_t</a> </td>
1351     </tr>
1352     </table>
1353     </td>
1354     </tr>
1355     </table>
1356     <table cellspacing=5 cellpadding=0 border=0>
1357     <tr>
1358     <td>
1359     &nbsp;
1360     </td>
1361     <td>
1362    
1363     <p>
1364    
1365     <p>
1366     Referenced by <a class="el" href="macro_8c-source.html#l00638">MACRO_addbuf()</a>, and <a class="el" href="macro_8c-source.html#l00071">MACRO_expand()</a>. </td>
1367     </tr>
1368     </table>
1369     <hr><h2>Enumeration Type Documentation</h2>
1370     <a class="anchor" name="a89" doxytag="spf.h::SPF_ACTION" ></a><p>
1371     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1372     <tr>
1373     <td class="mdRow">
1374     <table cellpadding="0" cellspacing="0" border="0">
1375     <tr>
1376     <td class="md" nowrap valign="top"> enum <a class="el" href="spf_8h.html#a37">SPF_ACTION</a> </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     <dl compact><dt><b>Enumeration values: </b></dt><dd>
1391     <table border=0 cellspacing=2 cellpadding=0>
1392     <tr><td valign=top><em><a class="anchor" name="a89a59" doxytag="DEFER" ></a>DEFER</em>&nbsp;</td><td>
1393     </td></tr>
1394     <tr><td valign=top><em><a class="anchor" name="a89a60" doxytag="TARPIT" ></a>TARPIT</em>&nbsp;</td><td>
1395     </td></tr>
1396     <tr><td valign=top><em><a class="anchor" name="a89a61" doxytag="ALLOW" ></a>ALLOW</em>&nbsp;</td><td>
1397     </td></tr>
1398     <tr><td valign=top><em><a class="anchor" name="a89a62" doxytag="REJECT" ></a>REJECT</em>&nbsp;</td><td>
1399     </td></tr>
1400     </table>
1401     </dl>
1402     Definition at line <a class="el" href="spf_8h-source.html#l00171">171</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>. </td>
1403     </tr>
1404     </table>
1405     <a class="anchor" name="a87" doxytag="spf.h::SPF_BOOL" ></a><p>
1406     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1407     <tr>
1408     <td class="mdRow">
1409     <table cellpadding="0" cellspacing="0" border="0">
1410     <tr>
1411     <td class="md" nowrap valign="top"> enum <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> </td>
1412     </tr>
1413     </table>
1414     </td>
1415     </tr>
1416     </table>
1417     <table cellspacing=5 cellpadding=0 border=0>
1418     <tr>
1419     <td>
1420     &nbsp;
1421     </td>
1422     <td>
1423    
1424     <p>
1425     <dl compact><dt><b>Enumeration values: </b></dt><dd>
1426     <table border=0 cellspacing=2 cellpadding=0>
1427     <tr><td valign=top><em><a class="anchor" name="a87a49" doxytag="SPF_FALSE" ></a>SPF_FALSE</em>&nbsp;</td><td>
1428     </td></tr>
1429     <tr><td valign=top><em><a class="anchor" name="a87a50" doxytag="SPF_TRUE" ></a>SPF_TRUE</em>&nbsp;</td><td>
1430     </td></tr>
1431     </table>
1432     </dl>
1433     Definition at line <a class="el" href="spf_8h-source.html#l00131">131</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>. </td>
1434     </tr>
1435     </table>
1436     <a class="anchor" name="a90" doxytag="spf.h::SPF_MECHANISM" ></a><p>
1437     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1438     <tr>
1439     <td class="mdRow">
1440     <table cellpadding="0" cellspacing="0" border="0">
1441     <tr>
1442     <td class="md" nowrap valign="top"> enum <a class="el" href="spf_8h.html#a38">SPF_MECHANISM</a> </td>
1443     </tr>
1444     </table>
1445     </td>
1446     </tr>
1447     </table>
1448     <table cellspacing=5 cellpadding=0 border=0>
1449     <tr>
1450     <td>
1451     &nbsp;
1452     </td>
1453     <td>
1454    
1455     <p>
1456     <dl compact><dt><b>Enumeration values: </b></dt><dd>
1457     <table border=0 cellspacing=2 cellpadding=0>
1458     <tr><td valign=top><em><a class="anchor" name="a90a63" doxytag="NO_POLICY" ></a>NO_POLICY</em>&nbsp;</td><td>
1459     </td></tr>
1460     <tr><td valign=top><em><a class="anchor" name="a90a64" doxytag="VERSION" ></a>VERSION</em>&nbsp;</td><td>
1461     </td></tr>
1462     <tr><td valign=top><em><a class="anchor" name="a90a65" doxytag="ALL" ></a>ALL</em>&nbsp;</td><td>
1463     </td></tr>
1464     <tr><td valign=top><em><a class="anchor" name="a90a66" doxytag="INCLUDE" ></a>INCLUDE</em>&nbsp;</td><td>
1465     </td></tr>
1466     <tr><td valign=top><em><a class="anchor" name="a90a67" doxytag="A" ></a>A</em>&nbsp;</td><td>
1467     </td></tr>
1468     <tr><td valign=top><em><a class="anchor" name="a90a68" doxytag="MX" ></a>MX</em>&nbsp;</td><td>
1469     </td></tr>
1470     <tr><td valign=top><em><a class="anchor" name="a90a69" doxytag="PTR" ></a>PTR</em>&nbsp;</td><td>
1471     </td></tr>
1472     <tr><td valign=top><em><a class="anchor" name="a90a70" doxytag="IP4" ></a>IP4</em>&nbsp;</td><td>
1473     </td></tr>
1474     <tr><td valign=top><em><a class="anchor" name="a90a71" doxytag="IP6" ></a>IP6</em>&nbsp;</td><td>
1475     </td></tr>
1476     <tr><td valign=top><em><a class="anchor" name="a90a72" doxytag="EXISTS" ></a>EXISTS</em>&nbsp;</td><td>
1477     </td></tr>
1478     <tr><td valign=top><em><a class="anchor" name="a90a73" doxytag="REDIRECT" ></a>REDIRECT</em>&nbsp;</td><td>
1479     </td></tr>
1480     <tr><td valign=top><em><a class="anchor" name="a90a74" doxytag="EXPLAIN" ></a>EXPLAIN</em>&nbsp;</td><td>
1481     </td></tr>
1482     <tr><td valign=top><em><a class="anchor" name="a90a75" doxytag="DEFAULT" ></a>DEFAULT</em>&nbsp;</td><td>
1483     </td></tr>
1484     <tr><td valign=top><em><a class="anchor" name="a90a76" doxytag="UNMECH" ></a>UNMECH</em>&nbsp;</td><td>
1485     </td></tr>
1486     </table>
1487     </dl>
1488     Definition at line <a class="el" href="spf_8h-source.html#l00187">187</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>. </td>
1489     </tr>
1490     </table>
1491     <a class="anchor" name="a88" doxytag="spf.h::SPF_RESULT" ></a><p>
1492     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1493     <tr>
1494     <td class="mdRow">
1495     <table cellpadding="0" cellspacing="0" border="0">
1496     <tr>
1497     <td class="md" nowrap valign="top"> enum <a class="el" href="spf_8h.html#a36">SPF_RESULT</a> </td>
1498     </tr>
1499     </table>
1500     </td>
1501     </tr>
1502     </table>
1503     <table cellspacing=5 cellpadding=0 border=0>
1504     <tr>
1505     <td>
1506     &nbsp;
1507     </td>
1508     <td>
1509    
1510     <p>
1511     <dl compact><dt><b>Enumeration values: </b></dt><dd>
1512     <table border=0 cellspacing=2 cellpadding=0>
1513     <tr><td valign=top><em><a class="anchor" name="a88a51" doxytag="SPF_PASS" ></a>SPF_PASS</em>&nbsp;</td><td>
1514     </td></tr>
1515     <tr><td valign=top><em><a class="anchor" name="a88a52" doxytag="SPF_NONE" ></a>SPF_NONE</em>&nbsp;</td><td>
1516     </td></tr>
1517     <tr><td valign=top><em><a class="anchor" name="a88a53" doxytag="SPF_S_FAIL" ></a>SPF_S_FAIL</em>&nbsp;</td><td>
1518     </td></tr>
1519     <tr><td valign=top><em><a class="anchor" name="a88a54" doxytag="SPF_H_FAIL" ></a>SPF_H_FAIL</em>&nbsp;</td><td>
1520     </td></tr>
1521     <tr><td valign=top><em><a class="anchor" name="a88a55" doxytag="SPF_ERROR" ></a>SPF_ERROR</em>&nbsp;</td><td>
1522     </td></tr>
1523     <tr><td valign=top><em><a class="anchor" name="a88a56" doxytag="SPF_NEUTRAL" ></a>SPF_NEUTRAL</em>&nbsp;</td><td>
1524     </td></tr>
1525     <tr><td valign=top><em><a class="anchor" name="a88a57" doxytag="SPF_UNKNOWN" ></a>SPF_UNKNOWN</em>&nbsp;</td><td>
1526     </td></tr>
1527     <tr><td valign=top><em><a class="anchor" name="a88a58" doxytag="SPF_UNMECH" ></a>SPF_UNMECH</em>&nbsp;</td><td>
1528     </td></tr>
1529     </table>
1530     </dl>
1531     Definition at line <a class="el" href="spf_8h-source.html#l00151">151</a> of file <a class="el" href="spf_8h-source.html">spf.h</a>. </td>
1532     </tr>
1533     </table>
1534     <hr><h2>Function Documentation</h2>
1535     <a class="anchor" name="a85" doxytag="spf.h::SPF_build_header" ></a><p>
1536     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1537     <tr>
1538     <td class="mdRow">
1539     <table cellpadding="0" cellspacing="0" border="0">
1540     <tr>
1541     <td class="md" nowrap valign="top"> char* SPF_build_header </td>
1542     <td class="md" valign="top">(&nbsp;</td>
1543     <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1544     <td class="mdname1" valign="top" nowrap> </td>
1545     <td class="md" valign="top">&nbsp;)&nbsp;</td>
1546     <td class="md" nowrap></td>
1547     </tr>
1548     </table>
1549     </td>
1550     </tr>
1551     </table>
1552     <table cellspacing=5 cellpadding=0 border=0>
1553     <tr>
1554     <td>
1555     &nbsp;
1556     </td>
1557     <td>
1558    
1559     <p>
1560     Definition at line <a class="el" href="main_8c-source.html#l01342">1342</a> of file <a class="el" href="main_8c-source.html">main.c</a>.
1561     <p>
1562     References <a class="el" href="spf_8h-source.html#l00349">peer_info_s::current_domain</a>, <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="spf_8h-source.html#l00358">peer_info_s::last_m</a>, <a class="el" href="spf_8h-source.html#l00350">peer_info_s::mta_hname</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.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#l00091">SPF_MAX_HEADER</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#a88a53">SPF_S_FAIL</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_8h-source.html#l00125">xmalloc</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>. </td>
1563     </tr>
1564     </table>
1565     <a class="anchor" name="a78" doxytag="spf.h::SPF_close" ></a><p>
1566     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1567     <tr>
1568     <td class="mdRow">
1569     <table cellpadding="0" cellspacing="0" border="0">
1570     <tr>
1571     <td class="md" nowrap valign="top"> <a class="el" href="structpeer__info__s.html">peer_info_t</a>* SPF_close </td>
1572     <td class="md" valign="top">(&nbsp;</td>
1573     <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1574     <td class="mdname1" valign="top" nowrap> </td>
1575     <td class="md" valign="top">&nbsp;)&nbsp;</td>
1576     <td class="md" nowrap></td>
1577     </tr>
1578     </table>
1579     </td>
1580     </tr>
1581     </table>
1582     <table cellspacing=5 cellpadding=0 border=0>
1583     <tr>
1584     <td>
1585     &nbsp;
1586     </td>
1587     <td>
1588    
1589     <p>
1590     Definition at line <a class="el" href="main_8c-source.html#l00313">313</a> of file <a class="el" href="main_8c-source.html">main.c</a>.
1591     <p>
1592     References <a class="el" href="spf_8h-source.html#l00353">peer_info_s::cur_eaddr</a>, <a class="el" href="spf_8h-source.html#l00349">peer_info_s::current_domain</a>, <a class="el" href="spf_8h-source.html#l00345">peer_info_s::explain</a>, <a class="el" href="spf_8h-source.html#l00344">peer_info_s::from</a>, <a class="el" href="spf_8h-source.html#l00346">peer_info_s::guess</a>, <a class="el" href="spf_8h-source.html#l00342">peer_info_s::helo</a>, <a class="el" href="spf_8h-source.html#l00350">peer_info_s::mta_hname</a>, <a class="el" href="spf_8h.html#a46">peer_info_t</a>, <a class="el" href="spf_8h-source.html#l00348">peer_info_s::ptr_mhost</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#l00347">peer_info_s::trusted</a>, <a class="el" href="util_8h-source.html#l00154">xepprintf</a>, and <a class="el" href="util_8h-source.html#l00127">xfree</a>.
1593     <p>
1594     Referenced by <a class="el" href="main_8c-source.html#l00081">SPF_init()</a>. </td>
1595     </tr>
1596     </table>
1597     <a class="anchor" name="a86" doxytag="spf.h::SPF_get_explain" ></a><p>
1598     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1599     <tr>
1600     <td class="mdRow">
1601     <table cellpadding="0" cellspacing="0" border="0">
1602     <tr>
1603     <td class="md" nowrap valign="top"> char* SPF_get_explain </td>
1604     <td class="md" valign="top">(&nbsp;</td>
1605     <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1606     <td class="mdname1" valign="top" nowrap> </td>
1607     <td class="md" valign="top">&nbsp;)&nbsp;</td>
1608     <td class="md" nowrap></td>
1609     </tr>
1610     </table>
1611     </td>
1612     </tr>
1613     </table>
1614     <table cellspacing=5 cellpadding=0 border=0>
1615     <tr>
1616     <td>
1617     &nbsp;
1618     </td>
1619     <td>
1620    
1621     <p>
1622     Definition at line <a class="el" href="main_8c-source.html#l01310">1310</a> of file <a class="el" href="main_8c-source.html">main.c</a>.
1623     <p>
1624     References <a class="el" href="spf_8h-source.html#l00345">peer_info_s::explain</a>, <a class="el" href="macro_8c-source.html#l00071">MACRO_expand()</a>, <a class="el" href="spf_8h.html#a46">peer_info_t</a>, <a class="el" href="spf_8h-source.html#l00106">SPF_EXPLAIN</a>, and <a class="el" href="util_8h-source.html#l00138">xprintf</a>.
1625     <p>
1626     Here is the call graph for this function:<p><center><img src="spf_8h_a86_cgraph.png" border="0" usemap="#spf_8h_a86_cgraph_map" alt=""></center>
1627     <map name="spf_8h_a86_cgraph_map">
1628     <area href="macro_8h.html#a1" shape="rect" coords="183,91,297,109" alt="">
1629     <area href="macro_8h.html#a4" shape="rect" coords="348,48,460,67" alt="">
1630     <area href="macro_8h.html#a2" shape="rect" coords="347,91,461,109" alt="">
1631     <area href="util_8h.html#a35" shape="rect" coords="364,133,444,152" alt="">
1632     <area href="dns_8h.html#a13" shape="rect" coords="512,48,685,67" alt="">
1633     <area href="macro_8h.html#a3" shape="rect" coords="540,133,657,152" alt="">
1634     <area href="util_8h.html#a50" shape="rect" coords="764,5,865,24" alt="">
1635     <area href="util_8h.html#a54" shape="rect" coords="736,48,893,67" alt="">
1636     <area href="util_8h.html#a38" shape="rect" coords="756,91,873,109" alt="">
1637     <area href="util_8h.html#a39" shape="rect" coords="755,133,875,152" alt="">
1638     <area href="util_8h.html#a56" shape="rect" coords="769,176,860,195" alt="">
1639     <area href="util_8h.html#a37" shape="rect" coords="767,219,863,237" alt="">
1640     </map>
1641     </td>
1642     </tr>
1643     </table>
1644     <a class="anchor" name="a77" doxytag="spf.h::SPF_init" ></a><p>
1645     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1646     <tr>
1647     <td class="mdRow">
1648     <table cellpadding="0" cellspacing="0" border="0">
1649     <tr>
1650     <td class="md" nowrap valign="top"> <a class="el" href="structpeer__info__s.html">peer_info_t</a>* SPF_init </td>
1651     <td class="md" valign="top">(&nbsp;</td>
1652     <td class="md" nowrap valign="top">const char *&nbsp;</td>
1653     <td class="mdname" nowrap>, </td>
1654     </tr>
1655     <tr>
1656     <td class="md" nowrap align="right"></td>
1657     <td></td>
1658     <td class="md" nowrap>const char *&nbsp;</td>
1659     <td class="mdname" nowrap>, </td>
1660     </tr>
1661     <tr>
1662     <td class="md" nowrap align="right"></td>
1663     <td></td>
1664     <td class="md" nowrap>const char *&nbsp;</td>
1665     <td class="mdname" nowrap>, </td>
1666     </tr>
1667     <tr>
1668     <td class="md" nowrap align="right"></td>
1669     <td></td>
1670     <td class="md" nowrap>const char *&nbsp;</td>
1671     <td class="mdname" nowrap>, </td>
1672     </tr>
1673     <tr>
1674     <td class="md" nowrap align="right"></td>
1675     <td></td>
1676     <td class="md" nowrap>const char *&nbsp;</td>
1677     <td class="mdname" nowrap>, </td>
1678     </tr>
1679     <tr>
1680     <td class="md" nowrap align="right"></td>
1681     <td></td>
1682     <td class="md" nowrap>u_int32_t&nbsp;</td>
1683     <td class="mdname" nowrap>, </td>
1684     </tr>
1685     <tr>
1686     <td class="md" nowrap align="right"></td>
1687     <td></td>
1688     <td class="md" nowrap>u_int32_t&nbsp;</td>
1689     <td class="mdname" nowrap></td>
1690     </tr>
1691     <tr>
1692     <td></td>
1693     <td class="md">)&nbsp;</td>
1694     <td class="md" colspan="2"></td>
1695     </tr>
1696     </table>
1697     </td>
1698     </tr>
1699     </table>
1700     <table cellspacing=5 cellpadding=0 border=0>
1701     <tr>
1702     <td>
1703     &nbsp;
1704     </td>
1705     <td>
1706    
1707     <p>
1708     Definition at line <a class="el" href="main_8c-source.html#l00081">81</a> of file <a class="el" href="main_8c-source.html">main.c</a>.
1709     <p>
1710     References <a class="el" href="spf_8h-source.html#l00363">peer_info_s::addr</a>, <a class="el" href="spf_8h-source.html#l00330">peer_info_s::ALL</a>, <a class="el" href="spf_8h-source.html#l00353">peer_info_s::cur_eaddr</a>, <a class="el" href="spf_8h-source.html#l00349">peer_info_s::current_domain</a>, <a class="el" href="spf_8h-source.html#l00343">peer_info_s::ehlo</a>, <a class="el" href="spf_8h-source.html#l00345">peer_info_s::explain</a>, <a class="el" href="spf_8h-source.html#l00344">peer_info_s::from</a>, <a class="el" href="spf_8h-source.html#l00346">peer_info_s::guess</a>, <a class="el" href="main_8h-source.html#l00114">HDR_ERROR</a>, <a class="el" href="main_8h-source.html#l00110">HDR_H_FAIL</a>, <a class="el" href="main_8h-source.html#l00117">HDR_NEUTRAL</a>, <a class="el" href="main_8h-source.html#l00102">HDR_NONE</a>, <a class="el" href="main_8h-source.html#l00098">HDR_PASS</a>, <a class="el" href="main_8h-source.html#l00105">HDR_S_FAIL</a>, <a class="el" href="main_8h-source.html#l00120">HDR_UNKNOWN</a>, <a class="el" href="main_8h-source.html#l00124">HDR_UNMECH</a>, <a class="el" href="spf_8h-source.html#l00342">peer_info_s::helo</a>, <a class="el" href="spf_8h-source.html#l00100">HR_ERROR</a>, <a class="el" href="spf_8h-source.html#l00099">HR_H_FAIL</a>, <a class="el" href="spf_8h-source.html#l00101">HR_NEUTRAL</a>, <a class="el" href="spf_8h-source.html#l00097">HR_NONE</a>, <a class="el" href="spf_8h-source.html#l00096">HR_PASS</a>, <a class="el" href="spf_8h-source.html#l00098">HR_S_FAIL</a>, <a class="el" href="spf_8h-source.html#l00102">HR_UNKNOWN</a>, <a class="el" href="spf_8h-source.html#l00103">HR_UNMECH</a>, <a class="el" href="spf_8h-source.html#l00355">peer_info_s::ip_ver</a>, <a class="el" href="spf_8h-source.html#l00350">peer_info_s::mta_hname</a>, <a class="el" href="spf_8h-source.html#l00340">peer_info_s::p</a>, <a class="el" href="spf_8h.html#a46">peer_info_t</a>, <a class="el" href="spf_8h-source.html#l00348">peer_info_s::ptr_mhost</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="util_8h-source.html#l00108">SIZEOF</a>, <a class="el" href="main_8c-source.html#l00313">SPF_close()</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-source.html#l00110">SPF_GUESS</a>, <a class="el" href="spf_8h.html#a88a54">SPF_H_FAIL</a>, <a class="el" href="util_8h-source.html#l00095">SPF_MAX_DATETIME</a>, <a class="el" href="spf_8h-source.html#l00079">SPF_MAX_IP_ADDR</a>, <a class="el" href="spf_8h-source.html#l00075">SPF_MAX_LOCAL_PART</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-source.html#l00371">peer_info_s::spf_rlevel</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-source.html#l00113">SPF_TRUSTED</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="spf_8h-source.html#l00338">peer_info_s::spf_ver</a>, <a class="el" href="spf_8h-source.html#l00347">peer_info_s::trusted</a>, <a class="el" href="spf_8h-source.html#l00336">peer_info_s::use_guess</a>, <a class="el" href="spf_8h-source.html#l00335">peer_info_s::use_trust</a>, <a class="el" href="spf_8h-source.html#l00357">peer_info_s::utc_time</a>, <a class="el" href="util_8c-source.html#l01309">UTIL_assoc_prefix()</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#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>.
1711     <p>
1712     Here is the call graph for this function:<p><center><img src="spf_8h_a77_cgraph.png" border="0" usemap="#spf_8h_a77_cgraph_map" alt=""></center>
1713     <map name="spf_8h_a77_cgraph_map">
1714     <area href="spf_8h.html#a78" shape="rect" coords="152,5,229,24" alt="">
1715     <area href="util_8h.html#a47" shape="rect" coords="131,48,251,66" alt="">
1716     <area href="util_8h.html#a35" shape="rect" coords="300,48,380,66" alt="">
1717     </map>
1718     </td>
1719     </tr>
1720     </table>
1721     <a class="anchor" name="a81" doxytag="spf.h::SPF_parse_policy" ></a><p>
1722     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1723     <tr>
1724     <td class="mdRow">
1725     <table cellpadding="0" cellspacing="0" border="0">
1726     <tr>
1727     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> SPF_parse_policy </td>
1728     <td class="md" valign="top">(&nbsp;</td>
1729     <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1730     <td class="mdname" nowrap>, </td>
1731     </tr>
1732     <tr>
1733     <td class="md" nowrap align="right"></td>
1734     <td></td>
1735     <td class="md" nowrap>const char *&nbsp;</td>
1736     <td class="mdname" nowrap></td>
1737     </tr>
1738     <tr>
1739     <td></td>
1740     <td class="md">)&nbsp;</td>
1741     <td class="md" colspan="2"></td>
1742     </tr>
1743     </table>
1744     </td>
1745     </tr>
1746     </table>
1747     <table cellspacing=5 cellpadding=0 border=0>
1748     <tr>
1749     <td>
1750     &nbsp;
1751     </td>
1752     <td>
1753    
1754     <p>
1755     Definition at line <a class="el" href="main_8c-source.html#l00721">721</a> of file <a class="el" href="main_8c-source.html">main.c</a>.
1756     <p>
1757     References <a class="el" href="spf_8h.html#a90a67">A</a>, <a class="el" href="spf_8h-source.html#l00363">peer_info_s::addr</a>, <a class="el" href="spf_8h-source.html#l00233">policy_addr_s::addr</a>, <a class="el" href="spf_8h-source.html#l00330">peer_info_s::ALL</a>, <a class="el" href="spf_8h.html#a90a65">ALL</a>, <a class="el" href="spf_8h-source.html#l00349">peer_info_s::current_domain</a>, <a class="el" href="spf_8h.html#a90a75">DEFAULT</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#a90a72">EXISTS</a>, <a class="el" href="spf_8h-source.html#l00345">peer_info_s::explain</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-source.html#l00374">peer_info_s::include_buf</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-source.html#l00358">peer_info_s::last_m</a>, <a class="el" href="macro_8c-source.html#l00071">MACRO_expand()</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#a46">peer_info_t</a>, <a class="el" href="spf_8h.html#a40">policy_addr_t</a>, <a class="el" href="spf_8h.html#a90a69">PTR</a>, <a class="el" href="spf_8h-source.html#l00351">peer_info_s::r_ip</a>, <a class="el" href="spf_8h.html#a90a73">REDIRECT</a>, <a class="el" href="spf_8h-source.html#l00375">peer_info_s::redirect_buf</a>, <a class="el" href="spf_8h-source.html#l00332">peer_info_s::RES</a>, <a class="el" href="spf_8h-source.html#l00333">peer_info_s::RES_P</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#a88a54">SPF_H_FAIL</a>, <a class="el" href="spf_8h-source.html#l00085">SPF_MAX_ERROR</a>, <a class="el" href="spf_8h-source.html#l00090">SPF_MAX_MECHANISM</a>, <a class="el" href="main_8h-source.html#l00079">SPF_MAX_RECURSE</a>, <a class="el" href="spf_8h-source.html#l00072">SPF_MAX_STR</a>, <a class="el" href="spf_8h.html#a38">SPF_MECHANISM</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-source.html#l00371">peer_info_s::spf_rlevel</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="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="spf_8h.html#a90a76">UNMECH</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#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#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#l00869">UTIL_is_macro()</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>, <a class="el" href="util_8c-source.html#l01135">UTIL_ptr_cmp()</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#l00127">xfree</a>, <a class="el" href="util_8h-source.html#l00146">xpprintf</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>.
1758     <p>
1759     Referenced by <a class="el" href="main_8c-source.html#l00570">SPF_policy_main_rec()</a>.
1760     <p>
1761     Here is the call graph for this function:<p><center><img src="spf_8h_a81_cgraph.png" border="0" usemap="#spf_8h_a81_cgraph_map" alt=""></center>
1762     <map name="spf_8h_a81_cgraph_map">
1763     <area href="dns_8h.html#a8" shape="rect" coords="404,357,484,375" alt="">
1764     <area href="util_8h.html#a47" shape="rect" coords="563,310,683,329" alt="">
1765     <area href="util_8h.html#a35" shape="rect" coords="745,141,825,159" alt="">
1766     <area href="macro_8h.html#a1" shape="rect" coords="565,69,680,87" alt="">
1767     <area href="util_8h.html#a43" shape="rect" coords="221,170,309,189" alt="">
1768     <area href="util_8h.html#a52" shape="rect" coords="393,263,495,282" alt="">
1769     <area href="util_8h.html#a48" shape="rect" coords="389,119,499,138" alt="">
1770     <area href="util_8h.html#a46" shape="rect" coords="549,467,696,486" alt="">
1771     <area href="util_8h.html#a45" shape="rect" coords="191,399,340,418" alt="">
1772     <area href="util_8h.html#a41" shape="rect" coords="215,442,316,461" alt="">
1773     <area href="util_8h.html#a40" shape="rect" coords="205,485,325,503" alt="">
1774     <area href="util_8h.html#a42" shape="rect" coords="217,263,313,282" alt="">
1775     <area href="util_8h.html#a44" shape="rect" coords="219,357,312,375" alt="">
1776     </map>
1777     </td>
1778     </tr>
1779     </table>
1780     <a class="anchor" name="a79" doxytag="spf.h::SPF_policy_main" ></a><p>
1781     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1782     <tr>
1783     <td class="mdRow">
1784     <table cellpadding="0" cellspacing="0" border="0">
1785     <tr>
1786     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a36">SPF_RESULT</a> SPF_policy_main </td>
1787     <td class="md" valign="top">(&nbsp;</td>
1788     <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1789     <td class="mdname1" valign="top" nowrap> </td>
1790     <td class="md" valign="top">&nbsp;)&nbsp;</td>
1791     <td class="md" nowrap></td>
1792     </tr>
1793     </table>
1794     </td>
1795     </tr>
1796     </table>
1797     <table cellspacing=5 cellpadding=0 border=0>
1798     <tr>
1799     <td>
1800     &nbsp;
1801     </td>
1802     <td>
1803    
1804     <p>
1805     Definition at line <a class="el" href="main_8c-source.html#l00399">399</a> of file <a class="el" href="main_8c-source.html">main.c</a>.
1806     <p>
1807     References <a class="el" href="main_8c-source.html#l01564">_SPF_clear_holdbufs()</a>, <a class="el" href="spf_8h-source.html#l00373">peer_info_s::cname_buf</a>, <a class="el" href="spf_8h-source.html#l00349">peer_info_s::current_domain</a>, <a class="el" href="spf_8h-source.html#l00374">peer_info_s::include_buf</a>, <a class="el" href="spf_8h.html#a46">peer_info_t</a>, <a class="el" href="spf_8h-source.html#l00375">peer_info_s::redirect_buf</a>, <a class="el" href="main_8h-source.html#l00079">SPF_MAX_RECURSE</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="main_8c-source.html#l00570">SPF_policy_main_rec()</a>, <a class="el" href="spf_8h.html#a36">SPF_RESULT</a>, <a class="el" href="spf_8h-source.html#l00371">peer_info_s::spf_rlevel</a>, <a class="el" href="spf_8h.html#a88a57">SPF_UNKNOWN</a>, <a class="el" href="util_8c-source.html#l01309">UTIL_assoc_prefix()</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>.
1808     <p>
1809     Here is the call graph for this function:<p><center><img src="spf_8h_a79_cgraph.png" border="0" usemap="#spf_8h_a79_cgraph_map" alt=""></center>
1810     <map name="spf_8h_a79_cgraph_map">
1811     <area href="main_8c.html#a2" shape="rect" coords="185,56,327,74" alt="">
1812     <area href="spf_8h.html#a80" shape="rect" coords="184,98,328,117" alt="">
1813     <area href="util_8h.html#a47" shape="rect" coords="683,124,803,142" alt="">
1814     <area href="dns_8h.html#a8" shape="rect" coords="552,52,632,70" alt="">
1815     <area href="spf_8h.html#a81" shape="rect" coords="379,98,501,117" alt="">
1816     <area href="util_8h.html#a31" shape="rect" coords="388,5,492,24" alt="">
1817     </map>
1818     </td>
1819     </tr>
1820     </table>
1821     <a class="anchor" name="a80" doxytag="spf.h::SPF_policy_main_rec" ></a><p>
1822     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1823     <tr>
1824     <td class="mdRow">
1825     <table cellpadding="0" cellspacing="0" border="0">
1826     <tr>
1827     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a36">SPF_RESULT</a> SPF_policy_main_rec </td>
1828     <td class="md" valign="top">(&nbsp;</td>
1829     <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1830     <td class="mdname1" valign="top" nowrap> </td>
1831     <td class="md" valign="top">&nbsp;)&nbsp;</td>
1832     <td class="md" nowrap></td>
1833     </tr>
1834     </table>
1835     </td>
1836     </tr>
1837     </table>
1838     <table cellspacing=5 cellpadding=0 border=0>
1839     <tr>
1840     <td>
1841     &nbsp;
1842     </td>
1843     <td>
1844    
1845     <p>
1846     Definition at line <a class="el" href="main_8c-source.html#l00570">570</a> of file <a class="el" href="main_8c-source.html">main.c</a>.
1847     <p>
1848     References <a class="el" href="spf_8h-source.html#l00363">peer_info_s::addr</a>, <a class="el" href="spf_8h-source.html#l00373">peer_info_s::cname_buf</a>, <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#l00346">peer_info_s::guess</a>, <a class="el" href="spf_8h-source.html#l00374">peer_info_s::include_buf</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#l00375">peer_info_s::redirect_buf</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.html#a88a55">SPF_ERROR</a>, <a class="el" href="spf_8h.html#a88a56">SPF_NEUTRAL</a>, <a class="el" href="main_8c-source.html#l00721">SPF_parse_policy()</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#a87a50">SPF_TRUE</a>, <a class="el" href="spf_8h-source.html#l00347">peer_info_s::trusted</a>, <a class="el" href="spf_8h-source.html#l00336">peer_info_s::use_guess</a>, <a class="el" href="spf_8h-source.html#l00335">peer_info_s::use_trust</a>, <a class="el" href="util_8c-source.html#l01309">UTIL_assoc_prefix()</a>, <a class="el" href="util_8c-source.html#l00326">UTIL_log_result()</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#l00146">xpprintf</a>, <a class="el" href="util_8h-source.html#l00138">xprintf</a>, and <a class="el" href="util_8h-source.html#l00142">xvprintf</a>.
1849     <p>
1850     Referenced by <a class="el" href="main_8c-source.html#l00399">SPF_policy_main()</a>.
1851     <p>
1852     Here is the call graph for this function:<p><center><img src="spf_8h_a80_cgraph.png" border="0" usemap="#spf_8h_a80_cgraph_map" alt=""></center>
1853     <map name="spf_8h_a80_cgraph_map">
1854     <area href="dns_8h.html#a8" shape="rect" coords="387,59,467,78" alt="">
1855     <area href="util_8h.html#a47" shape="rect" coords="517,59,637,78" alt="">
1856     <area href="spf_8h.html#a81" shape="rect" coords="213,106,336,125" alt="">
1857     <area href="util_8h.html#a31" shape="rect" coords="223,149,327,167" alt="">
1858     </map>
1859     </td>
1860     </tr>
1861     </table>
1862     <a class="anchor" name="a82" doxytag="spf.h::SPF_result" ></a><p>
1863     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1864     <tr>
1865     <td class="mdRow">
1866     <table cellpadding="0" cellspacing="0" border="0">
1867     <tr>
1868     <td class="md" nowrap valign="top"> char* SPF_result </td>
1869     <td class="md" valign="top">(&nbsp;</td>
1870     <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1871     <td class="mdname1" valign="top" nowrap> </td>
1872     <td class="md" valign="top">&nbsp;)&nbsp;</td>
1873     <td class="md" nowrap></td>
1874     </tr>
1875     </table>
1876     </td>
1877     </tr>
1878     </table>
1879     <table cellspacing=5 cellpadding=0 border=0>
1880     <tr>
1881     <td>
1882     &nbsp;
1883     </td>
1884     <td>
1885    
1886     <p>
1887     Definition at line <a class="el" href="main_8c-source.html#l01249">1249</a> of file <a class="el" href="main_8c-source.html">main.c</a>.
1888     <p>
1889     References <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-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="main_8h-source.html#l00089">RES_ERROR</a>, <a class="el" href="main_8h-source.html#l00087">RES_H_FAIL</a>, <a class="el" href="main_8h-source.html#l00091">RES_NEUTRAL</a>, <a class="el" href="main_8h-source.html#l00083">RES_NONE</a>, <a class="el" href="main_8h-source.html#l00082">RES_PASS</a>, <a class="el" href="main_8h-source.html#l00085">RES_S_FAIL</a>, <a class="el" href="main_8h-source.html#l00093">RES_UNKNOWN</a>, <a class="el" href="main_8h-source.html#l00094">RES_UNMECH</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#l00091">SPF_MAX_HEADER</a>, <a class="el" href="spf_8h-source.html#l00092">SPF_MAX_SMTP_RES</a>, <a class="el" href="spf_8h.html#a88a56">SPF_NEUTRAL</a>, <a class="el" href="spf_8h.html#a88a52">SPF_NONE</a>, <a class="el" href="spf_8h.html#a88a51">SPF_PASS</a>, <a class="el" href="spf_8h.html#a88a53">SPF_S_FAIL</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_8h-source.html#l00125">xmalloc</a>, and <a class="el" href="util_8h-source.html#l00138">xprintf</a>. </td>
1890     </tr>
1891     </table>
1892     <a class="anchor" name="a83" doxytag="spf.h::SPF_smtp_from" ></a><p>
1893     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1894     <tr>
1895     <td class="mdRow">
1896     <table cellpadding="0" cellspacing="0" border="0">
1897     <tr>
1898     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> SPF_smtp_from </td>
1899     <td class="md" valign="top">(&nbsp;</td>
1900     <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1901     <td class="mdname" nowrap>, </td>
1902     </tr>
1903     <tr>
1904     <td class="md" nowrap align="right"></td>
1905     <td></td>
1906     <td class="md" nowrap>const char *&nbsp;</td>
1907     <td class="mdname" nowrap></td>
1908     </tr>
1909     <tr>
1910     <td></td>
1911     <td class="md">)&nbsp;</td>
1912     <td class="md" colspan="2"></td>
1913     </tr>
1914     </table>
1915     </td>
1916     </tr>
1917     </table>
1918     <table cellspacing=5 cellpadding=0 border=0>
1919     <tr>
1920     <td>
1921     &nbsp;
1922     </td>
1923     <td>
1924    
1925     <p>
1926     Definition at line <a class="el" href="main_8c-source.html#l01456">1456</a> of file <a class="el" href="main_8c-source.html">main.c</a>.
1927     <p>
1928     References <a class="el" href="spf_8h-source.html#l00349">peer_info_s::current_domain</a>, <a class="el" href="spf_8h-source.html#l00344">peer_info_s::from</a>, <a class="el" href="spf_8h-source.html#l00342">peer_info_s::helo</a>, <a class="el" href="spf_8h-source.html#l00356">peer_info_s::local_part</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-source.html#l00081">SPF_MAX_ENV_HELO</a>, <a class="el" href="spf_8h-source.html#l00075">SPF_MAX_LOCAL_PART</a>, <a class="el" href="spf_8h-source.html#l00072">SPF_MAX_STR</a>, <a class="el" href="spf_8h.html#a87a50">SPF_TRUE</a>, <a class="el" href="util_8h-source.html#l00127">xfree</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>. </td>
1929     </tr>
1930     </table>
1931     <a class="anchor" name="a84" doxytag="spf.h::SPF_smtp_helo" ></a><p>
1932     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1933     <tr>
1934     <td class="mdRow">
1935     <table cellpadding="0" cellspacing="0" border="0">
1936     <tr>
1937     <td class="md" nowrap valign="top"> <a class="el" href="spf_8h.html#a35">SPF_BOOL</a> SPF_smtp_helo </td>
1938     <td class="md" valign="top">(&nbsp;</td>
1939     <td class="md" nowrap valign="top"><a class="el" href="structpeer__info__s.html">peer_info_t</a> *&nbsp;</td>
1940     <td class="mdname" nowrap>, </td>
1941     </tr>
1942     <tr>
1943     <td class="md" nowrap align="right"></td>
1944     <td></td>
1945     <td class="md" nowrap>const char *&nbsp;</td>
1946     <td class="mdname" nowrap></td>
1947     </tr>
1948     <tr>
1949     <td></td>
1950     <td class="md">)&nbsp;</td>
1951     <td class="md" colspan="2"></td>
1952     </tr>
1953     </table>
1954     </td>
1955     </tr>
1956     </table>
1957     <table cellspacing=5 cellpadding=0 border=0>
1958     <tr>
1959     <td>
1960     &nbsp;
1961     </td>
1962     <td>
1963    
1964     <p>
1965     Definition at line <a class="el" href="main_8c-source.html#l01423">1423</a> of file <a class="el" href="main_8c-source.html">main.c</a>.
1966     <p>
1967     References <a class="el" href="spf_8h-source.html#l00343">peer_info_s::ehlo</a>, <a class="el" href="spf_8h-source.html#l00342">peer_info_s::helo</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="util_8h-source.html#l00127">xfree</a>, <a class="el" href="util_8h-source.html#l00138">xprintf</a>, and <a class="el" href="util_8h-source.html#l00128">xstrdup</a>. </td>
1968     </tr>
1969     </table>
1970     <hr><h2>Variable Documentation</h2>
1971     <a class="anchor" name="a47" doxytag="spf.h::confg" ></a><p>
1972     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1973     <tr>
1974     <td class="mdRow">
1975     <table cellpadding="0" cellspacing="0" border="0">
1976     <tr>
1977     <td class="md" nowrap valign="top"> <a class="el" href="structspf__config__s.html">spf_config_t</a> <a class="el" href="spf_8h.html#a47">confg</a> </td>
1978     </tr>
1979     </table>
1980     </td>
1981     </tr>
1982     </table>
1983     <table cellspacing=5 cellpadding=0 border=0>
1984     <tr>
1985     <td>
1986     &nbsp;
1987     </td>
1988     <td>
1989    
1990     <p>
1991     Definition at line <a class="el" href="main_8c-source.html#l00057">57</a> of file <a class="el" href="main_8c-source.html">main.c</a>.
1992     <p>
1993     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>
1994     </tr>
1995     </table>
1996     <a class="anchor" name="a48" doxytag="spf.h::spf_rlevel" ></a><p>
1997     <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1998     <tr>
1999     <td class="mdRow">
2000     <table cellpadding="0" cellspacing="0" border="0">
2001     <tr>
2002     <td class="md" nowrap valign="top"> u_int8_t <a class="el" href="spf_8h.html#a48">spf_rlevel</a> </td>
2003     </tr>
2004     </table>
2005     </td>
2006     </tr>
2007     </table>
2008     <table cellspacing=5 cellpadding=0 border=0>
2009     <tr>
2010     <td>
2011     &nbsp;
2012     </td>
2013     <td>
2014    
2015     <p>
2016     </td>
2017     </tr>
2018     </table>
2019     <hr size="1"><address style="align: right;"><small>Generated on Thu Sep 16 18:10:50 2004 for libSPF v1.0 by
2020     <a href="http://www.doxygen.org/index.html">
2021     <img src="doxygen.png" alt="doxygen" align="middle" border=0 ></a> 1.3.8 </small></address>
2022     </body>
2023     </html>