Initial import from FreeBSD RELENG_4:
[dragonfly.git] / contrib / sendmail / libmilter / docs / xxfi_body.html
1 <html>
2 <head><title>xxfi_body</title></head>
3 <body>
4 <h1>xxfi_body</h1>
5
6 <table border="0" cellspacing=4 cellpadding=4>
7 <!---------- Synopsis ----------->
8 <tr><th valign="top" align=left width=150>SYNOPSIS</th><td>
9 <pre>
10 #include &lt;libmilter/mfapi.h&gt;
11 sfsistat (*xxfi_body)(
12         SMFICTX * ctx,
13         unsigned char * bodyp,
14         size_t len
15 );
16 </pre>
17 Handle a piece of a message's body.
18 </td></tr>
19
20 <!----------- Description ---------->
21 <tr><th valign="top" align=left>DESCRIPTION</th><td>
22 <table border="1" cellspacing=1 cellpadding=4>
23 <tr align="left" valign=top>
24 <th width="80">Called When</th>
25 <td>xxfi_body is called zero or more times between xxfi_eoh and xxfi_eom.</td>
26 </tr>
27 <tr align="left" valign=top>
28 <th>Default Behavior</th>
29 <td>Do nothing; return SMFIS_CONTINUE.</td>
30 </tr>
31 </table>
32
33 <!----------- Arguments ---------->
34 <tr><th valign="top" align=left>ARGUMENTS</th><td>
35     <table border="1" cellspacing=0>
36     <tr bgcolor="#dddddd"><th>Argument</th><th>Description</th></tr>
37     <tr valign="top"><td>ctx</td>
38         <td>Opaque context structure.
39         </td></tr>
40     <tr valign="top"><td>bodyp</td>
41         <td>Pointer to the start of this block of body data.  bodyp is not valid outside this call to xxfi_body.
42         </td></tr>
43     <tr valign="top"><td>len</td>
44         <td>The amount of data pointed to by bodyp.
45         </td></tr>
46     </table>
47 </td></tr>
48
49 <!----------- Notes ---------->
50 <tr>
51 <th valign="top" align=left>NOTES</th> 
52 <td>
53 <ul>
54 <li>bodyp points to a sequence of bytes.
55 It is <em>not</em> a C string (a sequence of characters that is terminated by '\0').
56 Therefore, do not use the usual C string functions like strlen() on this byte block.
57 Moreover, the byte sequence may contain '\0' characters inside the block.
58 Hence even if a trailing '\0' is added, C string functions may still fail
59 to work as expected.
60 <li>Since message bodies can be very large, defining xxfi_body can
61 significantly impact filter performance.
62 <li>End-of-lines are represented as received from SMTP (normally CR/LF).
63 <li>Later filters will see body changes made by earlier ones.
64 <li>Message bodies may be sent in multiple chunks, with one call to 
65     xxfi_body per chunk.
66 </ul>
67 </td>
68 </tr>
69 </table>
70
71 <hr size="1">
72 <font size="-1">
73 Copyright (c) 2000-2003 Sendmail, Inc. and its suppliers.
74 All rights reserved.
75 <br>
76 By using this file, you agree to the terms and conditions set
77 forth in the LICENSE.
78 </font>
79 </body>
80 </html>