xxfi_body.html revision 112810
190792Sgshapiro<html> 290792Sgshapiro<head><title>xxfi_body</title></head> 390792Sgshapiro<body> 490792Sgshapiro<h1>xxfi_body</h1> 590792Sgshapiro 690792Sgshapiro<table border="0" cellspacing=4 cellpadding=4> 790792Sgshapiro<!---------- Synopsis -----------> 890792Sgshapiro<tr><th valign="top" align=left width=150>SYNOPSIS</th><td> 990792Sgshapiro<pre> 1090792Sgshapiro#include <libmilter/mfapi.h> 1190792Sgshapirosfsistat (*xxfi_body)( 1290792Sgshapiro SMFICTX * ctx, 1390792Sgshapiro unsigned char * bodyp, 1490792Sgshapiro size_t len 1590792Sgshapiro); 1690792Sgshapiro</pre> 1790792SgshapiroHandle a piece of a message's body. 1890792Sgshapiro</td></tr> 1990792Sgshapiro 2090792Sgshapiro<!----------- Description ----------> 2190792Sgshapiro<tr><th valign="top" align=left>DESCRIPTION</th><td> 2290792Sgshapiro<table border="1" cellspacing=1 cellpadding=4> 2390792Sgshapiro<tr align="left" valign=top> 2490792Sgshapiro<th width="80">Called When</th> 2590792Sgshapiro<td>xxfi_body is called zero or more times between xxfi_eoh and xxfi_eom.</td> 2690792Sgshapiro</tr> 2790792Sgshapiro<tr align="left" valign=top> 2890792Sgshapiro<th>Default Behavior</th> 2990792Sgshapiro<td>Do nothing; return SMFIS_CONTINUE.</td> 3090792Sgshapiro</tr> 3190792Sgshapiro</table> 3290792Sgshapiro 3390792Sgshapiro<!----------- Arguments ----------> 3490792Sgshapiro<tr><th valign="top" align=left>ARGUMENTS</th><td> 3590792Sgshapiro <table border="1" cellspacing=0> 3690792Sgshapiro <tr bgcolor="#dddddd"><th>Argument</th><th>Description</th></tr> 3790792Sgshapiro <tr valign="top"><td>ctx</td> 3890792Sgshapiro <td>Opaque context structure. 3990792Sgshapiro </td></tr> 4090792Sgshapiro <tr valign="top"><td>bodyp</td> 4190792Sgshapiro <td>Pointer to the start of this block of body data. bodyp is not valid outside this call to xxfi_body. 4290792Sgshapiro </td></tr> 4390792Sgshapiro <tr valign="top"><td>len</td> 4490792Sgshapiro <td>The amount of data pointed to by bodyp. 4590792Sgshapiro </td></tr> 4690792Sgshapiro </table> 4790792Sgshapiro</td></tr> 4890792Sgshapiro 4990792Sgshapiro<!----------- Notes ----------> 5090792Sgshapiro<tr> 5190792Sgshapiro<th valign="top" align=left>NOTES</th> 5290792Sgshapiro<td> 5390792Sgshapiro<ul> 5490792Sgshapiro<li>bodyp points to a sequence of bytes. 5590792SgshapiroIt is <em>not</em> a C string (a sequence of characters that is terminated by '\0'). 5690792SgshapiroTherefore, do not use the usual C string functions like strlen() on this byte block. 5790792SgshapiroMoreover, the byte sequence may contain '\0' characters inside the block. 5890792SgshapiroHence even if a trailing '\0' is added, C string functions may still fail 5990792Sgshapiroto work as expected. 6090792Sgshapiro<li>Since message bodies can be very large, defining xxfi_body can 6190792Sgshapirosignificantly impact filter performance. 6290792Sgshapiro<li>End-of-lines are represented as received from SMTP (normally CR/LF). 6390792Sgshapiro<li>Later filters will see body changes made by earlier ones. 6490792Sgshapiro<li>Message bodies may be sent in multiple chunks, with one call to 6590792Sgshapiro xxfi_body per chunk. 6690792Sgshapiro</ul> 6790792Sgshapiro</td> 6890792Sgshapiro</tr> 6990792Sgshapiro</table> 7090792Sgshapiro 7190792Sgshapiro<hr size="1"> 7290792Sgshapiro<font size="-1"> 73112810SgshapiroCopyright (c) 2000-2003 Sendmail, Inc. and its suppliers. 7490792SgshapiroAll rights reserved. 7590792Sgshapiro<br> 7690792SgshapiroBy using this file, you agree to the terms and conditions set 77112810Sgshapiroforth in the LICENSE. 7890792Sgshapiro</font> 7990792Sgshapiro</body> 8090792Sgshapiro</html> 81