1<HTML>
2<HEAD><TITLE>smfi_chgfrom</TITLE></HEAD>
3<BODY>
4<!--
5$Id: smfi_chgfrom.html,v 1.4 2013-11-22 20:51:39 ca Exp $
6-->
7<H1>smfi_chgfrom</H1>
8
9<TABLE border="0" cellspacing=4 cellpadding=4>
10<!---------- Synopsis ----------->
11<TR><TH valign="top" align=left width=100>SYNOPSIS</TH><TD>
12<PRE>
13#include &lt;libmilter/mfapi.h&gt;
14int smfi_chgfrom(
15	SMFICTX *ctx,
16	const char *mail,
17	char *args
18);
19</PRE>
20Change the envelope sender (MAIL From) of the current message.
21</TD></TR>
22
23<!----------- Description ---------->
24<TR><TH valign="top" align=left>DESCRIPTION</TH><TD>
25<TABLE border="1" cellspacing=1 cellpadding=4>
26<TR align="left" valign=top>
27<TH width="80">Called When</TH>
28<TD>Called only from <A href="xxfi_eom.html">xxfi_eom</A>.</TD>
29</TR>
30<TR align="left" valign=top>
31<TH width="80">Effects</TH>
32<TD>Change the envelope sender (MAIL From) of the current message.</TD>
33</TR>
34</TABLE>
35</TD></TR>
36
37<!----------- Arguments ---------->
38<TR><TH valign="top" align=left>ARGUMENTS</TH><TD>
39    <TABLE border="1" cellspacing=0>
40    <TR bgcolor="#dddddd"><TH>Argument</TH><TH>Description</TH></TR>
41    <TR valign="top"><TD>ctx</TD>
42	<TD>Opaque context structure.
43	</TD></TR>
44    <TR valign="top"><TD>mail</TD>
45	<TD>The new sender address.
46	</TD></TR>
47    <TR valign="top"><TD>args</TD>
48	<TD>ESMTP arguments.
49	</TD></TR>
50    </TABLE>
51</TD></TR>
52
53<!----------- Return values ---------->
54<TR>
55<TH valign="top" align=left>RETURN VALUES</TH>
56
57<TD>smfi_chgfrom will fail and return MI_FAILURE if:
58<UL><LI>mail is NULL.
59    <LI>Changing the sender in the current connection state is invalid.
60    <LI>A network error occurs.
61    <LI><A HREF="smfi_register.html#SMFIF_CHGFROM">SMFIF_CHGFROM</A> is not set.
62</UL>
63Otherwise, it will return MI_SUCCESS.
64</TD>
65</TR>
66
67<!----------- Notes ---------->
68<TR align="left" valign=top>
69<TH>NOTES</TH>
70<TD>
71A filter which calls smfi_chgfrom must have set the
72<A HREF="smfi_register.html#SMFIF_CHGFROM">SMFIF_CHGFROM</A> flag.
73<BR>
74Even though all ESMTP arguments could be set via this call,
75it does not make sense to do so for many of them,
76e.g., SIZE and BODY.
77Setting those may cause problems, proper care must be taken.
78Moreover, there is no feedback from the MTA to the milter
79whether the call was successful.
80</TD>
81</TR>
82
83</TABLE>
84
85<HR size="1">
86<FONT size="-1">
87Copyright (c) 2006 Proofpoint, Inc. and its suppliers.
88All rights reserved.
89<BR>
90By using this file, you agree to the terms and conditions set
91forth in the LICENSE.
92</FONT>
93</BODY>
94</HTML>
95