1<HTML> 2<HEAD><TITLE>smfi_opensocket</TITLE></HEAD> 3<BODY> 4<!-- 5$Id: smfi_opensocket.html,v 1.8 2013-11-22 20:51:39 ca Exp $ 6--> 7<H1>smfi_opensocket</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 <libmilter/mfapi.h> 14int smfi_opensocket( 15 bool rmsocket 16); 17</PRE> 18Attempt to create the interface socket MTAs will use to connect to the 19filter. 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>Called only from program mainline, 28after calling <TT>smfi_setconn()</TT> and <TT>smfi_register()</TT>, 29but before calling <TT>smfi_main()</TT>. 30</TD> 31</TR> 32<TR align="left" valign=top> 33<TH width="80">Effects</TH> 34<TD>smfi_opensocket attempts to create the socket specified previously by 35a call to <TT>smfi_setconn()</TT> which will be the interface between MTAs 36and the filter. 37This allows the calling application to ensure that the 38socket can be created. 39If this is not called, 40<TT>smfi_main()</TT> will do so implicitly. 41</TD> 42</TR> 43</TABLE> 44 45<!----------- Arguments ----------> 46<TR><TH valign="top" align=left>ARGUMENTS</TH><TD> 47 <TABLE border="1" cellspacing=0> 48 <TR bgcolor="#dddddd"><TH>Argument</TH><TH>Description</TH></TR> 49 <TR valign="top"><TD>rmsocket</TD> 50 <TD>A flag indicating whether or not the library should try to 51 remove any existing UNIX domain socket before trying to create 52 a new one. 53 </TD></TR> 54 </TABLE> 55</TD></TR> 56 57<!----------- Return values ----------> 58<TR> 59<TH valign="top" align=left>RETURN VALUES</TH> 60 61<TD>smfi_opensocket will fail and return MI_FAILURE if: 62<UL> 63 <LI>The interface socket could not be created for any reason. 64 <LI><TT>rmsocket</TT> was <TT>true</TT>, and either the socket could 65 not be examined, or exists and could not be removed. 66 <LI><TT>smfi_setconn()</TT> or <TT>smfi_register()</TT> 67 have not been called. 68</UL> 69Otherwise, it will return MI_SUCCESS 70</TD> 71</TR> 72 73</TABLE> 74 75<HR size="1"> 76<FONT size="-1"> 77Copyright (c) 2003, 2008 Proofpoint, Inc. and its suppliers. 78All rights reserved. 79<BR> 80By using this file, you agree to the terms and conditions set 81forth in the LICENSE. 82</FONT> 83</BODY> 84</HTML> 85