<html> <head> <title>MAPIClientLibraries 0.8 API Documentation</title> <link href="doxygen.css" rel="stylesheet" type="text/css"/> <link href="apidocs.css" rel="stylesheet" type="text/css"/> </head> <body> <div id="website"> <div class="header"></div> <div id="middle_side"> <div id="right_side_home"> <!-- Generated by Doxygen 1.5.9 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> <li><a href="examples.html"><span>Examples</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>Globals</span></a></li> </ul> </div> </div> <div class="contents"> <h1>libmapi/IMSProvider.c File Reference</h1>Provider operations. <a href="#_details">More...</a> <p> <code>#include <libmapi/libmapi.h></code><br> <table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="IMSProvider_8c.html#8cf4e89cef4e43d2364ef6f4d2002130">GetNewLogonId</a> (struct mapi_session *session, uint8_t *logon_id)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="IMSProvider_8c.html#9cd81eb7c3d90eda00c82f2d48915c2f">Logoff</a> (mapi_object_t *obj_store)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="IMSProvider_8c.html#accd9111c24e9aac689edf4e614b20a1">RegisterNotification</a> (uint16_t ulEventMask)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="IMSProvider_8c.html#c229b2b3eb1bd0e4c2ed8ae8de698ccd">RfrGetFQDNFromLegacyDN</a> (struct mapi_session *session, const char **serverFQDN)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">_PUBLIC_ const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="IMSProvider_8c.html#9734b6b774273b74e4a2804809f25a9c">RfrGetNewDSA</a> (struct mapi_session *session, const char *server, const char *userDN)</td></tr> </table> <hr><h2>Detailed Description</h2> Provider operations. <p> <hr><h2>Function Documentation</h2> <a class="anchor" name="8cf4e89cef4e43d2364ef6f4d2002130"></a><!-- doxytag: member="IMSProvider.c::GetNewLogonId" ref="8cf4e89cef4e43d2364ef6f4d2002130" args="(struct mapi_session *session, uint8_t *logon_id)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum MAPISTATUS GetNewLogonId </td> <td>(</td> <td class="paramtype">struct mapi_session * </td> <td class="paramname"> <em>session</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">uint8_t * </td> <td class="paramname"> <em>logon_id</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p> Retrieve a free logon identifier within the session<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>session</em> </td><td>pointer to the MAPI session context </td></tr> <tr><td valign="top"></td><td valign="top"><em>logon_id</em> </td><td>pointer to the logon identifier the function returns</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI eorr </dd></dl> <p>Referenced by <a class="el" href="IMAPISession_8c_source.html#l00142">OpenPublicFolder()</a>, and <a class="el" href="IMAPISession_8c_source.html#l00306">OpenUserMailbox()</a>.</p> </div> </div><p> <a class="anchor" name="9cd81eb7c3d90eda00c82f2d48915c2f"></a><!-- doxytag: member="IMSProvider.c::Logoff" ref="9cd81eb7c3d90eda00c82f2d48915c2f" args="(mapi_object_t *obj_store)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">_PUBLIC_ enum MAPISTATUS Logoff </td> <td>(</td> <td class="paramtype">mapi_object_t * </td> <td class="paramname"> <em>obj_store</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Logoff an Exchange store<p> This function uninitializes the MAPI session associated to the object.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>obj_store</em> </td><td>pointer to the store object</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI_E_NOT_FOUND </dd></dl> <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="fetchappointment_8c-example.html#a16">fetchappointment.c</a>, and <a class="el" href="fetchmail_8c-example.html#a16">fetchmail.c</a>.</dl> <p>References <a class="el" href="mapi__object_8c_source.html#l00165">mapi_object_get_session()</a>, and <a class="el" href="mapi__object_8c_source.html#l00092">mapi_object_release()</a>.</p> </div> </div><p> <a class="anchor" name="accd9111c24e9aac689edf4e614b20a1"></a><!-- doxytag: member="IMSProvider.c::RegisterNotification" ref="accd9111c24e9aac689edf4e614b20a1" args="(uint16_t ulEventMask)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">_PUBLIC_ enum MAPISTATUS RegisterNotification </td> <td>(</td> <td class="paramtype">uint16_t </td> <td class="paramname"> <em>ulEventMask</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Initialize the notification subsystem<p> This function initializes the notification subsystem, binds a local UDP port to receive Exchange (server side) notifications and configures the server to send notifications on this port.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>ulEventMask</em> </td><td>the mask of events to provide notifications for.</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error.</dd></dl> <dl class="note" compact><dt><b>Note:</b></dt><dd>Developers may also call <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">GetLastError()</a> to retrieve the last MAPI error code. Possible MAPI error codes are:<ul> <li>MAPI_E_NOT_INITIALIZED: MAPI subsystem has not been initialized</li><li>MAPI_E_CALL_FAILED: A network problem was encountered during the transaction</li></ul> </dd></dl> <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="IMAPISupport_8c.html#30f5d03776a9e432af19d6803ee5784e">Subscribe</a>, <a class="el" href="IMAPISupport_8c.html#35355b1cdd5ef508f1f57a41842f8bd9">Unsubscribe</a>, <a class="el" href="IMAPISupport_8c.html#2da23c67d2c39273f6bcadde06d8fb4d">MonitorNotification</a>, <a class="el" href="IUnknown_8c.html#8237c7fc76377cb07f3f55920d6f20de">GetLastError</a> </dd></dl> <p>References <a class="el" href="emsmdb_8c_source.html#l00369">emsmdb_bind_notification()</a>, and <a class="el" href="emsmdb_8c_source.html#l00438">emsmdb_register_notification()</a>.</p> </div> </div><p> <a class="anchor" name="c229b2b3eb1bd0e4c2ed8ae8de698ccd"></a><!-- doxytag: member="IMSProvider.c::RfrGetFQDNFromLegacyDN" ref="c229b2b3eb1bd0e4c2ed8ae8de698ccd" args="(struct mapi_session *session, const char **serverFQDN)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">_PUBLIC_ enum MAPISTATUS RfrGetFQDNFromLegacyDN </td> <td>(</td> <td class="paramtype">struct mapi_session * </td> <td class="paramname"> <em>session</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char ** </td> <td class="paramname"> <em>serverFQDN</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p> Returns the FQDN of the NSPI server corresponding to a DN<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>session</em> </td><td>pointer to the MAPI session context </td></tr> <tr><td valign="top"></td><td valign="top"><em>serverFQDN</em> </td><td>pointer to the server FQDN string (return value)</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>MAPI_E_SUCCESS on success, otherwise a MAPI error and serverFQDN content set to NULL. </dd></dl> </div> </div><p> <a class="anchor" name="9734b6b774273b74e4a2804809f25a9c"></a><!-- doxytag: member="IMSProvider.c::RfrGetNewDSA" ref="9734b6b774273b74e4a2804809f25a9c" args="(struct mapi_session *session, const char *server, const char *userDN)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">_PUBLIC_ const char* RfrGetNewDSA </td> <td>(</td> <td class="paramtype">struct mapi_session * </td> <td class="paramname"> <em>session</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>server</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>userDN</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p> Returns the name of an NSPI server<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>session</em> </td><td>pointer to the MAPI session context </td></tr> <tr><td valign="top"></td><td valign="top"><em>server</em> </td><td>the Exchange server address (IP or FQDN) </td></tr> <tr><td valign="top"></td><td valign="top"><em>userDN</em> </td><td>optional user mailbox DN</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>a valid string on success, otherwise NULL </dd></dl> </div> </div><p> </div> </div> <br/> <table style="clear:both; margin: 0.5em auto; width:80%; text-align: center; background-color:#f8f8f8; border:2px solid #e0e0e0; padding:5px;"> <tr> <td> <img alt="Creative Commons License" src="CC_SomeRightsReserved.png" width="90" height="30" border="0" /><br /> <img alt="Creative Commons Attribution icon" src="24px-Cc-by_white.svg.png" width="24" height="24" border="0" /> <img alt="Creative Commons Share Alike icon" src="24px-Cc-sa_white.svg.png" width="24" height="24" border="0" /> </td> <td> <i><strong class="selflink">This content</strong> is licensed under the Creative Commons<br /> Attribution ShareAlike License v. 3.0:<br /> <a href="http://creativecommons.org/licenses/by-sa/3.0/" class="external free" title="http://creativecommons.org/licenses/by-sa/3.0/" rel="nofollow">http://creativecommons.org/licenses/by-sa/3.0/</a></i> </td></tr></table> <br/> </div> </div> </body> </html>