3
<title>MAPIProxy 2.0 API Documentation</title>
4
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
5
<link href="apidocs.css" rel="stylesheet" type="text/css"/>
9
<div class="header"></div>
10
<div id="middle_side">
11
<div id="right_side_home">
12
<!-- Generated by Doxygen 1.8.1.2 -->
13
<div id="navrow1" class="tabs">
15
<li><a href="index.html"><span>Main Page</span></a></li>
16
<li><a href="pages.html"><span>Related Pages</span></a></li>
17
<li><a href="annotated.html"><span>Data Structures</span></a></li>
18
<li class="current"><a href="files.html"><span>Files</span></a></li>
21
<div id="navrow2" class="tabs2">
23
<li><a href="files.html"><span>File List</span></a></li>
24
<li><a href="globals.html"><span>Globals</span></a></li>
27
<div id="nav-path" class="navpath">
29
<li class="navelem"><a class="el" href="dir_4f343f6bd7925b18a2c3c13737f093b9.html">mapiproxy</a></li><li class="navelem"><a class="el" href="dir_169eeca83f8b96a00b50043e4befc92d.html">libmapiproxy</a></li> </ul>
34
<a href="#func-members">Functions</a> </div>
35
<div class="headertitle">
36
<div class="title">mapi_handles.c File Reference</div> </div>
38
<div class="contents">
40
<p>API for MAPI handles management.
41
<a href="#details">More...</a></p>
42
<div class="textblock"><code>#include "mapiproxy/dcesrv_mapiproxy.h"</code><br/>
43
<code>#include "libmapi/libmapi.h"</code><br/>
44
<code>#include "libmapi/libmapi_private.h"</code><br/>
45
<code>#include "libmapiproxy.h"</code><br/>
46
</div><table class="memberdecls">
47
<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
48
Functions</h2></td></tr>
49
<tr class="memitem:a4fe3ac2f75fa6f03cc02d05f1aec6d3c"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="mapi__handles_8c.html#a4fe3ac2f75fa6f03cc02d05f1aec6d3c">mapi_handles_add</a> (struct mapi_handles_context *handles_ctx, uint32_t container_handle, struct mapi_handles **rec)</td></tr>
50
<tr class="memitem:a6e8c8296ff8ba9a2495369b639bcbad5"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="mapi__handles_8c.html#a6e8c8296ff8ba9a2495369b639bcbad5">mapi_handles_delete</a> (struct mapi_handles_context *handles_ctx, uint32_t handle)</td></tr>
51
<tr class="memitem:a09c2ad9f74b84a85629bba45e7ba61fd"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="mapi__handles_8c.html#a09c2ad9f74b84a85629bba45e7ba61fd">mapi_handles_get_private_data</a> (struct mapi_handles *handle, void **private_data)</td></tr>
52
<tr class="memitem:a1fa5beab8cd1b9943bf1906f8e261e92"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ struct <br class="typebreak"/>
53
mapi_handles_context * </td><td class="memItemRight" valign="bottom"><a class="el" href="mapi__handles_8c.html#a1fa5beab8cd1b9943bf1906f8e261e92">mapi_handles_init</a> (TALLOC_CTX *mem_ctx)</td></tr>
54
<tr class="memitem:ae801162d494c380edf7a39c4e2836885"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="mapi__handles_8c.html#ae801162d494c380edf7a39c4e2836885">mapi_handles_release</a> (struct mapi_handles_context *handles_ctx)</td></tr>
55
<tr class="memitem:abb77febbe1c75ee805057f3dba2856a2"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="mapi__handles_8c.html#abb77febbe1c75ee805057f3dba2856a2">mapi_handles_search</a> (struct mapi_handles_context *handles_ctx, uint32_t handle, struct mapi_handles **rec)</td></tr>
56
<tr class="memitem:a66ed76d929a57b26870eb24e1bce7e35"><td class="memItemLeft" align="right" valign="top">_PUBLIC_ enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="mapi__handles_8c.html#a66ed76d929a57b26870eb24e1bce7e35">mapi_handles_set_private_data</a> (struct mapi_handles *handle, void *private_data)</td></tr>
57
<tr class="memitem:abd08ef28b26d651df8e790573b9c1f2f"><td class="memItemLeft" align="right" valign="top">static enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="mapi__handles_8c.html#abd08ef28b26d651df8e790573b9c1f2f">mapi_handles_tdb_free</a> (struct mapi_handles_context *handles_ctx, uint32_t handle)</td></tr>
58
<tr class="memitem:a0c49eee4fc7b493b8a0371b7b8b463a7"><td class="memItemLeft" align="right" valign="top">static enum MAPISTATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="mapi__handles_8c.html#a0c49eee4fc7b493b8a0371b7b8b463a7">mapi_handles_tdb_update</a> (struct mapi_handles_context *handles_ctx, uint32_t handle, uint32_t container_handle)</td></tr>
59
<tr class="memitem:a1dff17af3a75920546a292eaca3c197b"><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="mapi__handles_8c.html#a1dff17af3a75920546a292eaca3c197b">mapi_handles_traverse_delete</a> (TDB_CONTEXT *tdb_ctx, TDB_DATA key, TDB_DATA dbuf, void *state)</td></tr>
60
<tr class="memitem:a4b87773036dbd0689bcf960a8a2a1ad4"><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="mapi__handles_8c.html#a4b87773036dbd0689bcf960a8a2a1ad4">mapi_handles_traverse_null</a> (TDB_CONTEXT *tdb_ctx, TDB_DATA key, TDB_DATA dbuf, void *state)</td></tr>
62
<a name="details" id="details"></a><h2>Detailed Description</h2>
63
<div class="textblock"><p>API for MAPI handles management. </p>
64
</div><h2>Function Documentation</h2>
65
<a class="anchor" id="a4fe3ac2f75fa6f03cc02d05f1aec6d3c"></a>
67
<div class="memproto">
68
<table class="memname">
70
<td class="memname">_PUBLIC_ enum MAPISTATUS mapi_handles_add </td>
72
<td class="paramtype">struct mapi_handles_context * </td>
73
<td class="paramname"><em>handles_ctx</em>, </td>
76
<td class="paramkey"></td>
78
<td class="paramtype">uint32_t </td>
79
<td class="paramname"><em>container_handle</em>, </td>
82
<td class="paramkey"></td>
84
<td class="paramtype">struct mapi_handles ** </td>
85
<td class="paramname"><em>rec</em> </td>
93
</div><div class="memdoc">
94
<p>Add a handles to the database and return a pointer on created record</p>
95
<dl class="params"><dt>Parameters</dt><dd>
96
<table class="params">
97
<tr><td class="paramname">handles_ctx</td><td>pointer to the MAPI handles context </td></tr>
98
<tr><td class="paramname">container_handle</td><td>the container handle if available </td></tr>
99
<tr><td class="paramname">rec</td><td>pointer on pointer to the MAPI handle structure the function returns</td></tr>
103
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error </dd></dl>
105
<p>References <a class="el" href="mapi__handles_8c.html#abd08ef28b26d651df8e790573b9c1f2f">mapi_handles_tdb_free()</a>, <a class="el" href="mapi__handles_8c.html#a0c49eee4fc7b493b8a0371b7b8b463a7">mapi_handles_tdb_update()</a>, and <a class="el" href="mapi__handles_8c.html#a4b87773036dbd0689bcf960a8a2a1ad4">mapi_handles_traverse_null()</a>.</p>
107
<p>Referenced by <a class="el" href="oxcmsg_8c.html#a77b973e5043205c20c1426f47d8d4e61">EcDoRpc_RopCreateAttach()</a>, <a class="el" href="oxcfold_8c.html#a7163397df314fb2d24ccfea7cae6ad14">EcDoRpc_RopCreateFolder()</a>, <a class="el" href="oxcmsg_8c.html#ac15eb24e2cdf46b4c7e4489cb8c6b742">EcDoRpc_RopCreateMessage()</a>, <a class="el" href="oxcfxics_8c.html#a460bf6876fe5cc6db477bf9af174c76d">EcDoRpc_RopFastTransferSourceCopyTo()</a>, <a class="el" href="oxcmsg_8c.html#a3db0e296229d9173614495bdac0e2082">EcDoRpc_RopGetAttachmentTable()</a>, <a class="el" href="oxcfold_8c.html#a3a85b5a81ba91d04c5e2c09d8aee3be5">EcDoRpc_RopGetContentsTable()</a>, <a class="el" href="oxcfold_8c.html#a0336c819070a9f9106db185ebf8a2e5c">EcDoRpc_RopGetHierarchyTable()</a>, <a class="el" href="oxcperm_8c.html#aec445acf934a5238852e1122a180b047">EcDoRpc_RopGetPermissionsTable()</a>, <a class="el" href="oxcstor_8c.html#ae11590e8808078d4c418adc04edb46c8">EcDoRpc_RopLogon()</a>, <a class="el" href="oxcmsg_8c.html#a8eb34b4c52b347f4bd7bd9d6240136f1">EcDoRpc_RopOpenAttach()</a>, <a class="el" href="oxcmsg_8c.html#a5ab61a24127f3d86a5679a0efc865946">EcDoRpc_RopOpenEmbeddedMessage()</a>, <a class="el" href="oxcfold_8c.html#a6fed2849de025e7cf82458287ec2074f">EcDoRpc_RopOpenFolder()</a>, <a class="el" href="oxcmsg_8c.html#a4d8668cf00595524dbe9866901c6929e">EcDoRpc_RopOpenMessage()</a>, <a class="el" href="oxcprpt_8c.html#a586507c226ba8cbc0b50eecc21731d1f">EcDoRpc_RopOpenStream()</a>, <a class="el" href="oxcnotif_8c.html#a654ddcde0e7aa4f7a73ab3dda312fbc8">EcDoRpc_RopRegisterNotification()</a>, <a class="el" href="oxcfxics_8c.html#aa9f3f51564a3d1f8a4e1ac620a652593">EcDoRpc_RopSyncConfigure()</a>, <a class="el" href="oxcfxics_8c.html#a8b53aad6e47dd39a878b66163eea3bae">EcDoRpc_RopSyncGetTransferState()</a>, <a class="el" href="oxcfxics_8c.html#a0f5bddf62733600f3718ebecc8a8f38c">EcDoRpc_RopSyncImportMessageChange()</a>, and <a class="el" href="oxcfxics_8c.html#a061087af05a0d1aa3006d9426dd68441">EcDoRpc_RopSyncOpenCollector()</a>.</p>
111
<a class="anchor" id="a6e8c8296ff8ba9a2495369b639bcbad5"></a>
112
<div class="memitem">
113
<div class="memproto">
114
<table class="memname">
116
<td class="memname">_PUBLIC_ enum MAPISTATUS mapi_handles_delete </td>
118
<td class="paramtype">struct mapi_handles_context * </td>
119
<td class="paramname"><em>handles_ctx</em>, </td>
122
<td class="paramkey"></td>
124
<td class="paramtype">uint32_t </td>
125
<td class="paramname"><em>handle</em> </td>
133
</div><div class="memdoc">
134
<p>Remove the MAPI handle referenced by the handle parameter from the double chained list and mark its associated TDB record as null</p>
135
<dl class="params"><dt>Parameters</dt><dd>
136
<table class="params">
137
<tr><td class="paramname">handles_ctx</td><td>pointer to the MAPI handles context </td></tr>
138
<tr><td class="paramname">handle</td><td>the handle to delete</td></tr>
142
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error </dd></dl>
144
<p>References <a class="el" href="mapi__handles_8c.html#abd08ef28b26d651df8e790573b9c1f2f">mapi_handles_tdb_free()</a>, and <a class="el" href="mapi__handles_8c.html#a1dff17af3a75920546a292eaca3c197b">mapi_handles_traverse_delete()</a>.</p>
146
<p>Referenced by <a class="el" href="oxcmsg_8c.html#a77b973e5043205c20c1426f47d8d4e61">EcDoRpc_RopCreateAttach()</a>, <a class="el" href="oxcfold_8c.html#a7163397df314fb2d24ccfea7cae6ad14">EcDoRpc_RopCreateFolder()</a>, <a class="el" href="oxcmsg_8c.html#a3db0e296229d9173614495bdac0e2082">EcDoRpc_RopGetAttachmentTable()</a>, <a class="el" href="oxcperm_8c.html#aec445acf934a5238852e1122a180b047">EcDoRpc_RopGetPermissionsTable()</a>, <a class="el" href="oxcmsg_8c.html#a8eb34b4c52b347f4bd7bd9d6240136f1">EcDoRpc_RopOpenAttach()</a>, <a class="el" href="oxcmsg_8c.html#a4d8668cf00595524dbe9866901c6929e">EcDoRpc_RopOpenMessage()</a>, <a class="el" href="oxcstor_8c.html#a5eee44505cef48e5f0705fec7a4a80e9">EcDoRpc_RopRelease()</a>, <a class="el" href="oxcfxics_8c.html#a0f5bddf62733600f3718ebecc8a8f38c">EcDoRpc_RopSyncImportMessageChange()</a>, and <a class="el" href="mapi__handles_8c.html#a1dff17af3a75920546a292eaca3c197b">mapi_handles_traverse_delete()</a>.</p>
150
<a class="anchor" id="a09c2ad9f74b84a85629bba45e7ba61fd"></a>
151
<div class="memitem">
152
<div class="memproto">
153
<table class="memname">
155
<td class="memname">_PUBLIC_ enum MAPISTATUS mapi_handles_get_private_data </td>
157
<td class="paramtype">struct mapi_handles * </td>
158
<td class="paramname"><em>handle</em>, </td>
161
<td class="paramkey"></td>
163
<td class="paramtype">void ** </td>
164
<td class="paramname"><em>private_data</em> </td>
172
</div><div class="memdoc">
173
<p>Get the private data associated to a MAPI handle</p>
174
<dl class="params"><dt>Parameters</dt><dd>
175
<table class="params">
176
<tr><td class="paramname">handle</td><td>pointer to the MAPI handle structure </td></tr>
177
<tr><td class="paramname">private_data</td><td>pointer on pointer to the private data the function returns</td></tr>
181
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI_E_NOT_FOUND </dd></dl>
183
<p>Referenced by <a class="el" href="oxcprpt_8c.html#ae40a929f500017a0f75092943be762ec">EcDoRpc_RopCommitStream()</a>, <a class="el" href="oxcfold_8c.html#a35635cda2d0fb89ed3e154f3e1c1903b">EcDoRpc_RopCopyFolder()</a>, <a class="el" href="oxcprpt_8c.html#a33f0e2ce3697b7ad74eb4527e21d2ffc">EcDoRpc_RopCopyTo()</a>, <a class="el" href="oxcmsg_8c.html#a77b973e5043205c20c1426f47d8d4e61">EcDoRpc_RopCreateAttach()</a>, <a class="el" href="oxcfold_8c.html#a7163397df314fb2d24ccfea7cae6ad14">EcDoRpc_RopCreateFolder()</a>, <a class="el" href="oxcmsg_8c.html#ac15eb24e2cdf46b4c7e4489cb8c6b742">EcDoRpc_RopCreateMessage()</a>, <a class="el" href="oxcfold_8c.html#a0afbec75d137e274ebd38227d3d79dbd">EcDoRpc_RopDeleteFolder()</a>, <a class="el" href="oxcfold_8c.html#acc3d0141db7d3275db44fedcd551dbc3">EcDoRpc_RopDeleteMessages()</a>, <a class="el" href="oxcfold_8c.html#a2c580f5c57e3133f825db4e9fc94120f">EcDoRpc_RopEmptyFolder()</a>, <a class="el" href="oxcfxics_8c.html#a460bf6876fe5cc6db477bf9af174c76d">EcDoRpc_RopFastTransferSourceCopyTo()</a>, <a class="el" href="oxcfxics_8c.html#ada720d4b2a59faa91ec3680781df2820">EcDoRpc_RopFastTransferSourceGetBuffer()</a>, <a class="el" href="oxctabl_8c.html#a3edb023d57de06df722adea043de28cb">EcDoRpc_RopFindRow()</a>, <a class="el" href="oxcmsg_8c.html#a3db0e296229d9173614495bdac0e2082">EcDoRpc_RopGetAttachmentTable()</a>, <a class="el" href="oxcfold_8c.html#a3a85b5a81ba91d04c5e2c09d8aee3be5">EcDoRpc_RopGetContentsTable()</a>, <a class="el" href="oxcfold_8c.html#a0336c819070a9f9106db185ebf8a2e5c">EcDoRpc_RopGetHierarchyTable()</a>, <a class="el" href="oxcfxics_8c.html#a9266368c2fec8879def62724eaff308f">EcDoRpc_RopGetLocalReplicaIds()</a>, <a class="el" href="oxcperm_8c.html#aec445acf934a5238852e1122a180b047">EcDoRpc_RopGetPermissionsTable()</a>, <a class="el" href="oxcprpt_8c.html#adc0e15b7895b7a8c43e5b380bc9e7205">EcDoRpc_RopGetPropertiesAll()</a>, <a class="el" href="oxcprpt_8c.html#a2e86838dc68ee97daf068058fd49b576">EcDoRpc_RopGetPropertiesList()</a>, <a class="el" href="oxcprpt_8c.html#a705e875d40cd97fc34d9e9d8dc1eaa26">EcDoRpc_RopGetPropertiesSpecific()</a>, <a class="el" href="oxcprpt_8c.html#a9dccf3d949d26a4e8e8969bec0ebb071">EcDoRpc_RopGetStreamSize()</a>, <a class="el" href="oxomsg_8c.html#a038bbb22535c19ced16a5360c462db57">EcDoRpc_RopGetTransportFolder()</a>, <a class="el" href="oxcstor_8c.html#aa991ec68aa6b7779e350b66f93ba86a3">EcDoRpc_RopIdFromLongTermId()</a>, <a class="el" href="oxcstor_8c.html#a67aa1b68ed65686fedb05d3fef5ae30b">EcDoRpc_RopLongTermIdFromId()</a>, <a class="el" href="oxcperm_8c.html#ae05237b12fc704fc8a725e272ad8d67b">EcDoRpc_RopModifyPermissions()</a>, <a class="el" href="oxcmsg_8c.html#a33b48606543431ccd1f5235a55424f9d">EcDoRpc_RopModifyRecipients()</a>, <a class="el" href="oxcfold_8c.html#ae25f1bc9ba1c194c67209878a1855bd9">EcDoRpc_RopMoveFolder()</a>, <a class="el" href="oxcmsg_8c.html#a8eb34b4c52b347f4bd7bd9d6240136f1">EcDoRpc_RopOpenAttach()</a>, <a class="el" href="oxcmsg_8c.html#a5ab61a24127f3d86a5679a0efc865946">EcDoRpc_RopOpenEmbeddedMessage()</a>, <a class="el" href="oxcfold_8c.html#a6fed2849de025e7cf82458287ec2074f">EcDoRpc_RopOpenFolder()</a>, <a class="el" href="oxcmsg_8c.html#a4d8668cf00595524dbe9866901c6929e">EcDoRpc_RopOpenMessage()</a>, <a class="el" href="oxcprpt_8c.html#a586507c226ba8cbc0b50eecc21731d1f">EcDoRpc_RopOpenStream()</a>, <a class="el" href="oxctabl_8c.html#a30cf288e94a3cd6c2ebc753b2b07882a">EcDoRpc_RopQueryPosition()</a>, <a class="el" href="oxctabl_8c.html#a77ed1de8d7a03039aafd69a49be99797">EcDoRpc_RopQueryRows()</a>, <a class="el" href="oxcprpt_8c.html#a0f0d1ed4952554b8f680109a8951f2e9">EcDoRpc_RopReadStream()</a>, <a class="el" href="oxcnotif_8c.html#a654ddcde0e7aa4f7a73ab3dda312fbc8">EcDoRpc_RopRegisterNotification()</a>, <a class="el" href="oxcmsg_8c.html#a532431843ae452b9e806a87b8c978419">EcDoRpc_RopReloadCachedInformation()</a>, <a class="el" href="oxcmsg_8c.html#aa837c3ad105d89da8ae6eaede5ccc4b2">EcDoRpc_RopRemoveAllRecipients()</a>, <a class="el" href="oxctabl_8c.html#abdd3123b395194d9216a67da5e91191c">EcDoRpc_RopResetTable()</a>, <a class="el" href="oxctabl_8c.html#a532a59a7430a6c931f4ee86da75cd373">EcDoRpc_RopRestrict()</a>, <a class="el" href="oxcmsg_8c.html#ad72d67887370febdd18a422c016776a2">EcDoRpc_RopSaveChangesMessage()</a>, <a class="el" href="oxctabl_8c.html#a541332eb02aa34276fbb17f6b77da24d">EcDoRpc_RopSeekRow()</a>, <a class="el" href="oxcprpt_8c.html#a67376625f8d74449e4d6fc5681e49d09">EcDoRpc_RopSeekStream()</a>, <a class="el" href="oxctabl_8c.html#abd63ef817bc13daf3b5be4de3f56e248">EcDoRpc_RopSetColumns()</a>, <a class="el" href="oxcmsg_8c.html#a6aa0e81cc294227fa3417122fae45d48">EcDoRpc_RopSetMessageReadFlag()</a>, <a class="el" href="oxcprpt_8c.html#a8c5edcb7ad5dc91b48082dce604e4c25">EcDoRpc_RopSetProperties()</a>, <a class="el" href="oxcprpt_8c.html#a000477c2bf865b43e2377f2c79b9b59e">EcDoRpc_RopSetStreamSize()</a>, <a class="el" href="oxctabl_8c.html#a64e1b1152839a4e6e499412e3fc5f273">EcDoRpc_RopSortTable()</a>, <a class="el" href="oxomsg_8c.html#aa55459d2834113663ac0ce17a6beadd1">EcDoRpc_RopSubmitMessage()</a>, <a class="el" href="oxcfxics_8c.html#aa9f3f51564a3d1f8a4e1ac620a652593">EcDoRpc_RopSyncConfigure()</a>, <a class="el" href="oxcfxics_8c.html#a8b53aad6e47dd39a878b66163eea3bae">EcDoRpc_RopSyncGetTransferState()</a>, <a class="el" href="oxcfxics_8c.html#a1135cd82557423f58d892f88f63846f9">EcDoRpc_RopSyncImportDeletes()</a>, <a class="el" href="oxcfxics_8c.html#afc5a7a976830e372caab7f6f2101d01c">EcDoRpc_RopSyncImportHierarchyChange()</a>, <a class="el" href="oxcfxics_8c.html#a0f5bddf62733600f3718ebecc8a8f38c">EcDoRpc_RopSyncImportMessageChange()</a>, <a class="el" href="oxcfxics_8c.html#a53e8558add03c825c5a87a83f86c0f2d">EcDoRpc_RopSyncImportReadStateChanges()</a>, <a class="el" href="oxcfxics_8c.html#a061087af05a0d1aa3006d9426dd68441">EcDoRpc_RopSyncOpenCollector()</a>, <a class="el" href="oxcfxics_8c.html#a8beae432414021563caa09a8b38df193">EcDoRpc_RopSyncUploadStateStreamBegin()</a>, <a class="el" href="oxcfxics_8c.html#afbb5b3ea7cb48f654d058b81b4477eaf">EcDoRpc_RopSyncUploadStateStreamContinue()</a>, <a class="el" href="oxcfxics_8c.html#abc32c09a73f81fd65d3d39601277f79e">EcDoRpc_RopSyncUploadStateStreamEnd()</a>, <a class="el" href="oxomsg_8c.html#ab08c81090ae5132e0215a6440f2938fa">EcDoRpc_RopTransportSend()</a>, <a class="el" href="oxcprpt_8c.html#adc1fae6a3daac2542cace64d65375d76">EcDoRpc_RopWriteStream()</a>, <a class="el" href="oxcstor_8c.html#a367732b1e02a2298d246350ad052d1dd">RopGetReceiveFolder()</a>, and <a class="el" href="oxcstor_8c.html#af4e20e9b08ad8300ce69ee3fc4e9bcd1">RopSetReceiveFolder()</a>.</p>
187
<a class="anchor" id="a1fa5beab8cd1b9943bf1906f8e261e92"></a>
188
<div class="memitem">
189
<div class="memproto">
190
<table class="mlabels">
192
<td class="mlabels-left">
193
<table class="memname">
195
<td class="memname">_PUBLIC_ struct mapi_handles_context* mapi_handles_init </td>
197
<td class="paramtype">TALLOC_CTX * </td>
198
<td class="paramname"><em>mem_ctx</em></td><td>)</td>
203
<td class="mlabels-right">
204
<span class="mlabels"><span class="mlabel">read</span></span> </td>
207
</div><div class="memdoc">
208
<p>Initialize MAPI handles context</p>
209
<dl class="params"><dt>Parameters</dt><dd>
210
<table class="params">
211
<tr><td class="paramname">mem_ctx</td><td>pointer to the memory context</td></tr>
215
<dl class="section return"><dt>Returns</dt><dd>Allocated MAPI handles context on success, otherwise NULL </dd></dl>
217
<p>Referenced by <a class="el" href="emsmdbp_8c.html#a4c9b3174b912ab3c628bf2f2d9551ad0">emsmdbp_init()</a>.</p>
221
<a class="anchor" id="ae801162d494c380edf7a39c4e2836885"></a>
222
<div class="memitem">
223
<div class="memproto">
224
<table class="memname">
226
<td class="memname">_PUBLIC_ enum MAPISTATUS mapi_handles_release </td>
228
<td class="paramtype">struct mapi_handles_context * </td>
229
<td class="paramname"><em>handles_ctx</em></td><td>)</td>
233
</div><div class="memdoc">
234
<p>Release MAPI handles context</p>
235
<dl class="params"><dt>Parameters</dt><dd>
236
<table class="params">
237
<tr><td class="paramname">handles_ctx</td><td>pointer to the MAPI handles context</td></tr>
241
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error </dd></dl>
243
<p>Referenced by <a class="el" href="emsmdbp_8c.html#a00a431aa1042935c6aa34f84adcccd7f">emsmdbp_mapi_handles_destructor()</a>.</p>
247
<a class="anchor" id="abb77febbe1c75ee805057f3dba2856a2"></a>
248
<div class="memitem">
249
<div class="memproto">
250
<table class="memname">
252
<td class="memname">_PUBLIC_ enum MAPISTATUS mapi_handles_search </td>
254
<td class="paramtype">struct mapi_handles_context * </td>
255
<td class="paramname"><em>handles_ctx</em>, </td>
258
<td class="paramkey"></td>
260
<td class="paramtype">uint32_t </td>
261
<td class="paramname"><em>handle</em>, </td>
264
<td class="paramkey"></td>
266
<td class="paramtype">struct mapi_handles ** </td>
267
<td class="paramname"><em>rec</em> </td>
275
</div><div class="memdoc">
276
<p>Search for a record in the TDB database</p>
277
<dl class="params"><dt>Parameters</dt><dd>
278
<table class="params">
279
<tr><td class="paramname">handles_ctx</td><td>pointer to the MAPI handles context </td></tr>
280
<tr><td class="paramname">handle</td><td>MAPI handle to lookup </td></tr>
281
<tr><td class="paramname">rec</td><td>pointer to the MAPI handle structure the function returns</td></tr>
285
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error </dd></dl>
287
<p>Referenced by <a class="el" href="oxcprpt_8c.html#ae40a929f500017a0f75092943be762ec">EcDoRpc_RopCommitStream()</a>, <a class="el" href="oxcfold_8c.html#a35635cda2d0fb89ed3e154f3e1c1903b">EcDoRpc_RopCopyFolder()</a>, <a class="el" href="oxcprpt_8c.html#a33f0e2ce3697b7ad74eb4527e21d2ffc">EcDoRpc_RopCopyTo()</a>, <a class="el" href="oxcmsg_8c.html#a77b973e5043205c20c1426f47d8d4e61">EcDoRpc_RopCreateAttach()</a>, <a class="el" href="oxcfold_8c.html#a7163397df314fb2d24ccfea7cae6ad14">EcDoRpc_RopCreateFolder()</a>, <a class="el" href="oxcmsg_8c.html#ac15eb24e2cdf46b4c7e4489cb8c6b742">EcDoRpc_RopCreateMessage()</a>, <a class="el" href="oxcfold_8c.html#a0afbec75d137e274ebd38227d3d79dbd">EcDoRpc_RopDeleteFolder()</a>, <a class="el" href="oxcfold_8c.html#acc3d0141db7d3275db44fedcd551dbc3">EcDoRpc_RopDeleteMessages()</a>, <a class="el" href="oxcfold_8c.html#a2c580f5c57e3133f825db4e9fc94120f">EcDoRpc_RopEmptyFolder()</a>, <a class="el" href="oxcfxics_8c.html#a460bf6876fe5cc6db477bf9af174c76d">EcDoRpc_RopFastTransferSourceCopyTo()</a>, <a class="el" href="oxcfxics_8c.html#ada720d4b2a59faa91ec3680781df2820">EcDoRpc_RopFastTransferSourceGetBuffer()</a>, <a class="el" href="oxctabl_8c.html#a3edb023d57de06df722adea043de28cb">EcDoRpc_RopFindRow()</a>, <a class="el" href="oxcmsg_8c.html#a3db0e296229d9173614495bdac0e2082">EcDoRpc_RopGetAttachmentTable()</a>, <a class="el" href="oxcfold_8c.html#a3a85b5a81ba91d04c5e2c09d8aee3be5">EcDoRpc_RopGetContentsTable()</a>, <a class="el" href="oxcfold_8c.html#a0336c819070a9f9106db185ebf8a2e5c">EcDoRpc_RopGetHierarchyTable()</a>, <a class="el" href="oxcfxics_8c.html#a9266368c2fec8879def62724eaff308f">EcDoRpc_RopGetLocalReplicaIds()</a>, <a class="el" href="oxcperm_8c.html#aec445acf934a5238852e1122a180b047">EcDoRpc_RopGetPermissionsTable()</a>, <a class="el" href="oxcprpt_8c.html#adc0e15b7895b7a8c43e5b380bc9e7205">EcDoRpc_RopGetPropertiesAll()</a>, <a class="el" href="oxcprpt_8c.html#a2e86838dc68ee97daf068058fd49b576">EcDoRpc_RopGetPropertiesList()</a>, <a class="el" href="oxcprpt_8c.html#a705e875d40cd97fc34d9e9d8dc1eaa26">EcDoRpc_RopGetPropertiesSpecific()</a>, <a class="el" href="oxcprpt_8c.html#a9dccf3d949d26a4e8e8969bec0ebb071">EcDoRpc_RopGetStreamSize()</a>, <a class="el" href="oxomsg_8c.html#a038bbb22535c19ced16a5360c462db57">EcDoRpc_RopGetTransportFolder()</a>, <a class="el" href="oxcstor_8c.html#aa991ec68aa6b7779e350b66f93ba86a3">EcDoRpc_RopIdFromLongTermId()</a>, <a class="el" href="oxcstor_8c.html#a67aa1b68ed65686fedb05d3fef5ae30b">EcDoRpc_RopLongTermIdFromId()</a>, <a class="el" href="oxcperm_8c.html#ae05237b12fc704fc8a725e272ad8d67b">EcDoRpc_RopModifyPermissions()</a>, <a class="el" href="oxcmsg_8c.html#a33b48606543431ccd1f5235a55424f9d">EcDoRpc_RopModifyRecipients()</a>, <a class="el" href="oxcfold_8c.html#ae25f1bc9ba1c194c67209878a1855bd9">EcDoRpc_RopMoveFolder()</a>, <a class="el" href="oxcmsg_8c.html#a8eb34b4c52b347f4bd7bd9d6240136f1">EcDoRpc_RopOpenAttach()</a>, <a class="el" href="oxcmsg_8c.html#a5ab61a24127f3d86a5679a0efc865946">EcDoRpc_RopOpenEmbeddedMessage()</a>, <a class="el" href="oxcfold_8c.html#a6fed2849de025e7cf82458287ec2074f">EcDoRpc_RopOpenFolder()</a>, <a class="el" href="oxcmsg_8c.html#a4d8668cf00595524dbe9866901c6929e">EcDoRpc_RopOpenMessage()</a>, <a class="el" href="oxcprpt_8c.html#a586507c226ba8cbc0b50eecc21731d1f">EcDoRpc_RopOpenStream()</a>, <a class="el" href="oxctabl_8c.html#a30cf288e94a3cd6c2ebc753b2b07882a">EcDoRpc_RopQueryPosition()</a>, <a class="el" href="oxctabl_8c.html#a77ed1de8d7a03039aafd69a49be99797">EcDoRpc_RopQueryRows()</a>, <a class="el" href="oxcprpt_8c.html#a0f0d1ed4952554b8f680109a8951f2e9">EcDoRpc_RopReadStream()</a>, <a class="el" href="oxcnotif_8c.html#a654ddcde0e7aa4f7a73ab3dda312fbc8">EcDoRpc_RopRegisterNotification()</a>, <a class="el" href="oxcmsg_8c.html#a532431843ae452b9e806a87b8c978419">EcDoRpc_RopReloadCachedInformation()</a>, <a class="el" href="oxcmsg_8c.html#aa837c3ad105d89da8ae6eaede5ccc4b2">EcDoRpc_RopRemoveAllRecipients()</a>, <a class="el" href="oxctabl_8c.html#abdd3123b395194d9216a67da5e91191c">EcDoRpc_RopResetTable()</a>, <a class="el" href="oxctabl_8c.html#a532a59a7430a6c931f4ee86da75cd373">EcDoRpc_RopRestrict()</a>, <a class="el" href="oxcmsg_8c.html#ad72d67887370febdd18a422c016776a2">EcDoRpc_RopSaveChangesMessage()</a>, <a class="el" href="oxctabl_8c.html#a541332eb02aa34276fbb17f6b77da24d">EcDoRpc_RopSeekRow()</a>, <a class="el" href="oxcprpt_8c.html#a67376625f8d74449e4d6fc5681e49d09">EcDoRpc_RopSeekStream()</a>, <a class="el" href="oxctabl_8c.html#abd63ef817bc13daf3b5be4de3f56e248">EcDoRpc_RopSetColumns()</a>, <a class="el" href="oxcmsg_8c.html#a6aa0e81cc294227fa3417122fae45d48">EcDoRpc_RopSetMessageReadFlag()</a>, <a class="el" href="oxcprpt_8c.html#a8c5edcb7ad5dc91b48082dce604e4c25">EcDoRpc_RopSetProperties()</a>, <a class="el" href="oxcprpt_8c.html#a000477c2bf865b43e2377f2c79b9b59e">EcDoRpc_RopSetStreamSize()</a>, <a class="el" href="oxctabl_8c.html#a64e1b1152839a4e6e499412e3fc5f273">EcDoRpc_RopSortTable()</a>, <a class="el" href="oxomsg_8c.html#aa55459d2834113663ac0ce17a6beadd1">EcDoRpc_RopSubmitMessage()</a>, <a class="el" href="oxcfxics_8c.html#aa9f3f51564a3d1f8a4e1ac620a652593">EcDoRpc_RopSyncConfigure()</a>, <a class="el" href="oxcfxics_8c.html#a8b53aad6e47dd39a878b66163eea3bae">EcDoRpc_RopSyncGetTransferState()</a>, <a class="el" href="oxcfxics_8c.html#a1135cd82557423f58d892f88f63846f9">EcDoRpc_RopSyncImportDeletes()</a>, <a class="el" href="oxcfxics_8c.html#afc5a7a976830e372caab7f6f2101d01c">EcDoRpc_RopSyncImportHierarchyChange()</a>, <a class="el" href="oxcfxics_8c.html#a0f5bddf62733600f3718ebecc8a8f38c">EcDoRpc_RopSyncImportMessageChange()</a>, <a class="el" href="oxcfxics_8c.html#a53e8558add03c825c5a87a83f86c0f2d">EcDoRpc_RopSyncImportReadStateChanges()</a>, <a class="el" href="oxcfxics_8c.html#a061087af05a0d1aa3006d9426dd68441">EcDoRpc_RopSyncOpenCollector()</a>, <a class="el" href="oxcfxics_8c.html#a8beae432414021563caa09a8b38df193">EcDoRpc_RopSyncUploadStateStreamBegin()</a>, <a class="el" href="oxcfxics_8c.html#afbb5b3ea7cb48f654d058b81b4477eaf">EcDoRpc_RopSyncUploadStateStreamContinue()</a>, <a class="el" href="oxcfxics_8c.html#abc32c09a73f81fd65d3d39601277f79e">EcDoRpc_RopSyncUploadStateStreamEnd()</a>, <a class="el" href="oxomsg_8c.html#ab08c81090ae5132e0215a6440f2938fa">EcDoRpc_RopTransportSend()</a>, <a class="el" href="oxcprpt_8c.html#adc1fae6a3daac2542cace64d65375d76">EcDoRpc_RopWriteStream()</a>, <a class="el" href="oxcstor_8c.html#a367732b1e02a2298d246350ad052d1dd">RopGetReceiveFolder()</a>, and <a class="el" href="oxcstor_8c.html#af4e20e9b08ad8300ce69ee3fc4e9bcd1">RopSetReceiveFolder()</a>.</p>
291
<a class="anchor" id="a66ed76d929a57b26870eb24e1bce7e35"></a>
292
<div class="memitem">
293
<div class="memproto">
294
<table class="memname">
296
<td class="memname">_PUBLIC_ enum MAPISTATUS mapi_handles_set_private_data </td>
298
<td class="paramtype">struct mapi_handles * </td>
299
<td class="paramname"><em>handle</em>, </td>
302
<td class="paramkey"></td>
304
<td class="paramtype">void * </td>
305
<td class="paramname"><em>private_data</em> </td>
313
</div><div class="memdoc">
314
<p>Set the private data associated to a MAPI handle</p>
315
<dl class="params"><dt>Parameters</dt><dd>
316
<table class="params">
317
<tr><td class="paramname">handle</td><td>pointer to the MAPI handle structure </td></tr>
318
<tr><td class="paramname">private_data</td><td>pointer to the private data to associate to the MAPI handle</td></tr>
322
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error </dd></dl>
324
<p>Referenced by <a class="el" href="oxcmsg_8c.html#a77b973e5043205c20c1426f47d8d4e61">EcDoRpc_RopCreateAttach()</a>, <a class="el" href="oxcfold_8c.html#a7163397df314fb2d24ccfea7cae6ad14">EcDoRpc_RopCreateFolder()</a>, <a class="el" href="oxcmsg_8c.html#ac15eb24e2cdf46b4c7e4489cb8c6b742">EcDoRpc_RopCreateMessage()</a>, <a class="el" href="oxcfxics_8c.html#a460bf6876fe5cc6db477bf9af174c76d">EcDoRpc_RopFastTransferSourceCopyTo()</a>, <a class="el" href="oxcmsg_8c.html#a3db0e296229d9173614495bdac0e2082">EcDoRpc_RopGetAttachmentTable()</a>, <a class="el" href="oxcfold_8c.html#a3a85b5a81ba91d04c5e2c09d8aee3be5">EcDoRpc_RopGetContentsTable()</a>, <a class="el" href="oxcfold_8c.html#a0336c819070a9f9106db185ebf8a2e5c">EcDoRpc_RopGetHierarchyTable()</a>, <a class="el" href="oxcperm_8c.html#aec445acf934a5238852e1122a180b047">EcDoRpc_RopGetPermissionsTable()</a>, <a class="el" href="oxcstor_8c.html#ae11590e8808078d4c418adc04edb46c8">EcDoRpc_RopLogon()</a>, <a class="el" href="oxcmsg_8c.html#a8eb34b4c52b347f4bd7bd9d6240136f1">EcDoRpc_RopOpenAttach()</a>, <a class="el" href="oxcmsg_8c.html#a5ab61a24127f3d86a5679a0efc865946">EcDoRpc_RopOpenEmbeddedMessage()</a>, <a class="el" href="oxcfold_8c.html#a6fed2849de025e7cf82458287ec2074f">EcDoRpc_RopOpenFolder()</a>, <a class="el" href="oxcmsg_8c.html#a4d8668cf00595524dbe9866901c6929e">EcDoRpc_RopOpenMessage()</a>, <a class="el" href="oxcprpt_8c.html#a586507c226ba8cbc0b50eecc21731d1f">EcDoRpc_RopOpenStream()</a>, <a class="el" href="oxcnotif_8c.html#a654ddcde0e7aa4f7a73ab3dda312fbc8">EcDoRpc_RopRegisterNotification()</a>, <a class="el" href="oxcfxics_8c.html#aa9f3f51564a3d1f8a4e1ac620a652593">EcDoRpc_RopSyncConfigure()</a>, <a class="el" href="oxcfxics_8c.html#a8b53aad6e47dd39a878b66163eea3bae">EcDoRpc_RopSyncGetTransferState()</a>, <a class="el" href="oxcfxics_8c.html#a0f5bddf62733600f3718ebecc8a8f38c">EcDoRpc_RopSyncImportMessageChange()</a>, and <a class="el" href="oxcfxics_8c.html#a061087af05a0d1aa3006d9426dd68441">EcDoRpc_RopSyncOpenCollector()</a>.</p>
328
<a class="anchor" id="abd08ef28b26d651df8e790573b9c1f2f"></a>
329
<div class="memitem">
330
<div class="memproto">
331
<table class="mlabels">
333
<td class="mlabels-left">
334
<table class="memname">
336
<td class="memname">static enum MAPISTATUS mapi_handles_tdb_free </td>
338
<td class="paramtype">struct mapi_handles_context * </td>
339
<td class="paramname"><em>handles_ctx</em>, </td>
342
<td class="paramkey"></td>
344
<td class="paramtype">uint32_t </td>
345
<td class="paramname"><em>handle</em> </td>
354
<td class="mlabels-right">
355
<span class="mlabels"><span class="mlabel">static</span></span> </td>
358
</div><div class="memdoc">
359
<p>Set a TDB record data as null meaning it can be reused in the future.</p>
360
<dl class="params"><dt>Parameters</dt><dd>
361
<table class="params">
362
<tr><td class="paramname">handles_ctx</td><td>pointer to the MAPI handles context </td></tr>
363
<tr><td class="paramname">handle</td><td>handle key value to free</td></tr>
367
<dl class="section return"><dt>Returns</dt><dd>MAPI_E_SUCCESS on success, otherwise MAPI error </dd></dl>
369
<p>Referenced by <a class="el" href="mapi__handles_8c.html#a4fe3ac2f75fa6f03cc02d05f1aec6d3c">mapi_handles_add()</a>, and <a class="el" href="mapi__handles_8c.html#a6e8c8296ff8ba9a2495369b639bcbad5">mapi_handles_delete()</a>.</p>
373
<a class="anchor" id="a0c49eee4fc7b493b8a0371b7b8b463a7"></a>
374
<div class="memitem">
375
<div class="memproto">
376
<table class="mlabels">
378
<td class="mlabels-left">
379
<table class="memname">
381
<td class="memname">static enum MAPISTATUS mapi_handles_tdb_update </td>
383
<td class="paramtype">struct mapi_handles_context * </td>
384
<td class="paramname"><em>handles_ctx</em>, </td>
387
<td class="paramkey"></td>
389
<td class="paramtype">uint32_t </td>
390
<td class="paramname"><em>handle</em>, </td>
393
<td class="paramkey"></td>
395
<td class="paramtype">uint32_t </td>
396
<td class="paramname"><em>container_handle</em> </td>
405
<td class="mlabels-right">
406
<span class="mlabels"><span class="mlabel">static</span></span> </td>
409
</div><div class="memdoc">
410
<p>Update a TDB record </p>
412
<p>Referenced by <a class="el" href="mapi__handles_8c.html#a4fe3ac2f75fa6f03cc02d05f1aec6d3c">mapi_handles_add()</a>.</p>
416
<a class="anchor" id="a1dff17af3a75920546a292eaca3c197b"></a>
417
<div class="memitem">
418
<div class="memproto">
419
<table class="mlabels">
421
<td class="mlabels-left">
422
<table class="memname">
424
<td class="memname">static int mapi_handles_traverse_delete </td>
426
<td class="paramtype">TDB_CONTEXT * </td>
427
<td class="paramname"><em>tdb_ctx</em>, </td>
430
<td class="paramkey"></td>
432
<td class="paramtype">TDB_DATA </td>
433
<td class="paramname"><em>key</em>, </td>
436
<td class="paramkey"></td>
438
<td class="paramtype">TDB_DATA </td>
439
<td class="paramname"><em>dbuf</em>, </td>
442
<td class="paramkey"></td>
444
<td class="paramtype">void * </td>
445
<td class="paramname"><em>state</em> </td>
454
<td class="mlabels-right">
455
<span class="mlabels"><span class="mlabel">static</span></span> </td>
458
</div><div class="memdoc">
459
<p>Traverse TDB database and search for records which dbuf value is set to state.</p>
460
<dl class="params"><dt>Parameters</dt><dd>
461
<table class="params">
462
<tr><td class="paramname">tdb_ctx</td><td>pointer to the TDB context </td></tr>
463
<tr><td class="paramname">key</td><td>the current TDB key (potential child handle) </td></tr>
464
<tr><td class="paramname">dbuf</td><td>the current TDB value (parent handle) </td></tr>
465
<tr><td class="paramname">state</td><td>pointer on private data</td></tr>
469
<dl class="section return"><dt>Returns</dt><dd>1 when a free record is found, otherwise 0 </dd></dl>
471
<p>References <a class="el" href="mapi__handles_8c.html#a6e8c8296ff8ba9a2495369b639bcbad5">mapi_handles_delete()</a>.</p>
473
<p>Referenced by <a class="el" href="mapi__handles_8c.html#a6e8c8296ff8ba9a2495369b639bcbad5">mapi_handles_delete()</a>.</p>
477
<a class="anchor" id="a4b87773036dbd0689bcf960a8a2a1ad4"></a>
478
<div class="memitem">
479
<div class="memproto">
480
<table class="mlabels">
482
<td class="mlabels-left">
483
<table class="memname">
485
<td class="memname">static int mapi_handles_traverse_null </td>
487
<td class="paramtype">TDB_CONTEXT * </td>
488
<td class="paramname"><em>tdb_ctx</em>, </td>
491
<td class="paramkey"></td>
493
<td class="paramtype">TDB_DATA </td>
494
<td class="paramname"><em>key</em>, </td>
497
<td class="paramkey"></td>
499
<td class="paramtype">TDB_DATA </td>
500
<td class="paramname"><em>dbuf</em>, </td>
503
<td class="paramkey"></td>
505
<td class="paramtype">void * </td>
506
<td class="paramname"><em>state</em> </td>
515
<td class="mlabels-right">
516
<span class="mlabels"><span class="mlabel">static</span></span> </td>
519
</div><div class="memdoc">
520
<p>Traverse TDB database and search for the first record which dbuf value is "null" string.</p>
521
<dl class="params"><dt>Parameters</dt><dd>
522
<table class="params">
523
<tr><td class="paramname">tdb_ctx</td><td>pointer to the TDB context </td></tr>
524
<tr><td class="paramname">key</td><td>the current TDB key </td></tr>
525
<tr><td class="paramname">dbuf</td><td>the current TDB value </td></tr>
526
<tr><td class="paramname">state</td><td>pointer on private data</td></tr>
530
<dl class="section return"><dt>Returns</dt><dd>1 when a free record is found, otherwise 0 </dd></dl>
532
<p>Referenced by <a class="el" href="mapi__handles_8c.html#a4fe3ac2f75fa6f03cc02d05f1aec6d3c">mapi_handles_add()</a>.</p>
536
</div><!-- contents -->
539
<table style="clear:both; margin: 0.5em auto; width:80%; text-align: center; background-color:#f8f8f8; border:2px solid #e0e0e0; padding:5px;">
542
<img alt="Creative Commons License" src="CC_SomeRightsReserved.png" width="90" height="30" border="0" /><br />
543
<img alt="Creative Commons Attribution icon" src="24px-Cc-by_white.svg.png" width="24" height="24" border="0" />
544
<img alt="Creative Commons Share Alike icon" src="24px-Cc-sa_white.svg.png" width="24" height="24" border="0" />
546
<td> <i><strong class="selflink">This content</strong> is licensed under the Creative Commons<br />
547
Attribution ShareAlike License v. 3.0:<br />
548
<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>