smfi_getsymval.html revision 132943
1<html>
2<head><title>smfi_getsymval</title></head>
3<body>
4<!--
5$Id: smfi_getsymval.html,v 1.10 2003/03/05 19:57:54 ca Exp $
6-->
7<h1>smfi_getsymval</h1>
8
9<table border="0" cellspacing=4 cellpadding=4>
10<!---------- Synopsis ----------->
11<tr><th valign="top" align=left width=150>SYNOPSIS</th><td>
12<pre>
13#include &lt;libmilter/mfapi.h&gt;
14char* smfi_getsymval(
15	SMFICTX *ctx,
16	char *symname
17);
18</pre>
19Get the value of a sendmail macro.
20</td></tr>
21
22<!----------- Description ---------->
23<tr><th valign="top" align=left>DESCRIPTION</th><td>
24<table border="1" cellspacing=1 cellpadding=4>
25<tr align="left" valign=top>
26<th width="80">Called When</th>
27<td>smfi_getsymval may be called from within any of the xxfi_* callbacks.  Which macros are defined will depend on when it is called.</td>
28</tr>
29<tr align="left" valign=top>
30<th width="80">Effects</th>
31<td>None.</td>
32</tr>
33</table>
34
35<!----------- Arguments ---------->
36<tr><th valign="top" align=left>ARGUMENTS</th><td>
37    <table border="1" cellspacing=0>
38    <tr bgcolor="#dddddd"><th>Argument</th><th>Description</th></tr>
39    <tr valign="top"><td>ctx</td>
40	<td>The opaque context structure.
41	</td></tr>
42    <tr valign="top"><td>symname</td>
43	<td>The name of a sendmail macro.
44	Single letter macros can optionally be enclosed in braces ("{" and "}"),
45	longer macro names must be enclosed in braces, just as in a
46	<tt>sendmail.cf</tt> file.
47	<a href="#notes">See below</a> for default macros.
48	</td></tr>
49    </table>
50</td></tr>
51
52<!----------- Return values ---------->
53<tr>
54<th valign="top" align=left>RETURN VALUES</th> 
55
56<td>smfi_getsymval returns the value of the given macro as a null-terminated string, or NULL if the macro is not defined.</td>
57</tr>
58
59<!----------- Notes ---------->
60<tr align="left" valign=top>
61<th><a name="notes">NOTES</A></th> 
62<td>
63By default, the following macros are valid in the given contexts:
64
65<table border="1" cellspacing=0>
66<tr bgcolor="#dddddd"><th>Sent With</th><th>Macros</th></tr>
67<tr><td>xxfi_connect</td>    <td>daemon_name, if_name, if_addr, j, _</td></tr>
68<tr><td>xxfi_helo</td>       <td>tls_version, cipher, cipher_bits, cert_subject, cert_issuer</td></tr>
69<tr><td>xxfi_envfrom</td>    <td>i, auth_type, auth_authen, auth_ssf, auth_author,
70                mail_mailer, mail_host, mail_addr</td></tr>
71<tr><td>xxfi_envrcpt</td>    <td>rcpt_mailer, rcpt_host, rcpt_addr</td></tr>
72</table>
73<p>
74All macros stay in effect from the point they are received until the
75end of the connection for the first two sets, the end of the message
76for the third (xxfi_envfrom), and just for each recipient for the
77final set (xxfi_envrcpt).
78<p>
79The macro list can be changed using the confMILTER_MACROS_* options in
80sendmail.mc.  The scopes of such macros will be determined by when
81they are set by sendmail.  For descriptions of macros' values, please
82see the "Sendmail Installation and Operation Guide" provided with your
83sendmail distribution.
84
85</td>
86</tr>
87
88</table>
89
90<hr size="1">
91<font size="-1">
92Copyright (c) 2000, 2002-2003 Sendmail, Inc. and its suppliers.
93All rights reserved.
94<br>
95By using this file, you agree to the terms and conditions set
96forth in the LICENSE.
97</font>
98</body>
99</html>
100