3 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
5 <meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
6 <link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
7 <link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
8 <link rel="PREVIOUS" title="keysmngr" href="xmlsec-keysmngr.html">
9 <link rel="NEXT" title="membuf" href="xmlsec-membuf.html">
10 <style type="text/css">.synopsis, .classsynopsis {
12 border: solid 1px #aaaaaa;
17 border: solid 1px #aaaaff;
26 border: solid 1px #ffaaaa;
33 .navigation a:visited {
40 <body><table witdh="100%" valign="top"><tr valign="top">
41 <td valign="top" align="left" width="210">
42 <img src="../images/logo.gif" alt="XML Security Library" border="0"><p></p>
44 <li><a href="../index.html">Home</a></li>
45 <li><a href="../download.html">Download</a></li>
46 <li><a href="../news.html">News</a></li>
47 <li><a href="../documentation.html">Documentation</a></li>
49 <li><a href="../faq.html">FAQ</a></li>
50 <li><a href="../api/xmlsec-notes.html">Tutorial</a></li>
51 <li><a href="../api/xmlsec-reference.html">API reference</a></li>
52 <li><a href="../api/xmlsec-examples.html">Examples</a></li>
54 <li><a href="../xmldsig.html">XML Digital Signature</a></li>
55 <ul><li><a href="http://www.aleksey.com/xmlsec/xmldsig-verifier.html">Online Verifier</a></li></ul>
56 <li><a href="../xmlenc.html">XML Encryption</a></li>
57 <li><a href="../c14n.html">XML Canonicalization</a></li>
58 <li><a href="../bugs.html">Reporting Bugs</a></li>
59 <li><a href="http://www.aleksey.com/pipermail/xmlsec">Mailing list</a></li>
60 <li><a href="../related.html">Related</a></li>
61 <li><a href="../authors.html">Authors</a></li>
66 <td><a href="http://xmlsoft.org/"><img src="../images/libxml2-logo.png" alt="LibXML2" border="0"></a></td>
70 <td><a href="http://xmlsoft.org/XSLT"><img src="../images/libxslt-logo.png" alt="LibXSLT" border="0"></a></td>
74 <td><a href="http://www.openssl.org/"><img src="../images/openssl-logo.png" alt="OpenSSL" border="0"></a></td>
76 <!--Links - start--><!--Links - end-->
79 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
80 <table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
81 <td><a accesskey="p" href="xmlsec-keysmngr.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
82 <td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
83 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
84 <th width="100%" align="center">XML Security Library Reference Manual</th>
85 <td><a accesskey="n" href="xmlsec-membuf.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
88 <a name="XMLSEC-LIST"></a>list</h1>
89 <div class="REFNAMEDIV">
90 <a name="AEN10800"></a><h2>Name</h2>list -- Generic list structure implementation.</div>
91 <div class="REFSYNOPSISDIV">
92 <a name="XMLSEC-LIST.SYNOPSIS"></a><h2>Synopsis</h2>
93 <pre class="SYNOPSIS">struct <a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrList</a>;
94 <font>void</font> <a href="xmlsec-list.html#XMLSECPTRLISTSETDEFAULTALLOCMODE">xmlSecPtrListSetDefaultAllocMode</a> (<a href="xmlsec-buffer.html#XMLSECALLOCMODE">xmlSecAllocMode</a> defAllocMode,
95 <a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> defInitialSize);
96 <font>int</font> <a href="xmlsec-list.html#XMLSECPTRLISTINITIALIZE">xmlSecPtrListInitialize</a> (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list,
97 <font>xmlSecPtrListId</font> id);
98 <font>void</font> <a href="xmlsec-list.html#XMLSECPTRLISTFINALIZE">xmlSecPtrListFinalize</a> (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list);
99 <a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> <a href="xmlsec-list.html#XMLSECPTRLISTCREATE">xmlSecPtrListCreate</a> (<font>xmlSecPtrListId</font> id);
100 <font>void</font> <a href="xmlsec-list.html#XMLSECPTRLISTDESTROY">xmlSecPtrListDestroy</a> (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list);
101 <font>void</font> <a href="xmlsec-list.html#XMLSECPTRLISTEMPTY">xmlSecPtrListEmpty</a> (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list);
102 <font>int</font> <a href="xmlsec-list.html#XMLSECPTRLISTCOPY">xmlSecPtrListCopy</a> (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> dst,
103 <a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> src);
104 <font>xmlSecPtrListPtr</font> <a href="xmlsec-list.html#XMLSECPTRLISTDUPLICATE">xmlSecPtrListDuplicate</a> (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list);
105 <a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> <a href="xmlsec-list.html#XMLSECPTRLISTGETSIZE">xmlSecPtrListGetSize</a> (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list);
106 <a href="xmlsec-xmlsec.html#XMLSECPTR">xmlSecPtr</a> <a href="xmlsec-list.html#XMLSECPTRLISTGETITEM">xmlSecPtrListGetItem</a> (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list,
107 <a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> pos);
108 <font>int</font> <a href="xmlsec-list.html#XMLSECPTRLISTADD">xmlSecPtrListAdd</a> (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list,
109 <font>xmlSecPtr</font> item);
110 <font>int</font> <a href="xmlsec-list.html#XMLSECPTRLISTSET">xmlSecPtrListSet</a> (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list,
111 <font>xmlSecPtr</font> item,
112 <a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> pos);
113 <font>int</font> <a href="xmlsec-list.html#XMLSECPTRLISTREMOVE">xmlSecPtrListRemove</a> (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list,
114 <a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> pos);
115 <font>void</font> <a href="xmlsec-list.html#XMLSECPTRLISTDEBUGDUMP">xmlSecPtrListDebugDump</a> (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list,
116 <font>FILE</font> *output);
117 <font>void</font> <a href="xmlsec-list.html#XMLSECPTRLISTDEBUGXMLDUMP">xmlSecPtrListDebugXmlDump</a> (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list,
118 <font>FILE</font> *output);
119 #define <a href="xmlsec-list.html#XMLSECPTRLISTGETNAME">xmlSecPtrListGetName</a> (list)
120 #define <a href="xmlsec-list.html#XMLSECPTRLISTISVALID">xmlSecPtrListIsValid</a> (list)
121 #define <a href="xmlsec-list.html#XMLSECPTRLISTCHECKID">xmlSecPtrListCheckId</a> (list, dataId)
122 #define <a href="xmlsec-list.html#XMLSECPTRLISTIDUNKNOWN">xmlSecPtrListIdUnknown</a>
123 <a href="xmlsec-xmlsec.html#XMLSECPTR">xmlSecPtr</a> (<a href="xmlsec-list.html#XMLSECPTRDUPLICATEITEMMETHOD">*xmlSecPtrDuplicateItemMethod</a>) (<font>xmlSecPtr</font> ptr);
124 <font>void</font> (<a href="xmlsec-list.html#XMLSECPTRDESTROYITEMMETHOD">*xmlSecPtrDestroyItemMethod</a>) (<font>xmlSecPtr</font> ptr);
125 <font>void</font> (<a href="xmlsec-list.html#XMLSECPTRDEBUGDUMPITEMMETHOD">*xmlSecPtrDebugDumpItemMethod</a>) (<font>xmlSecPtr</font> ptr,
126 <font>FILE</font> *output);
127 struct <a href="xmlsec-list.html#XMLSECPTRLISTKLASS">xmlSecPtrListKlass</a>;
128 #define <a href="xmlsec-list.html#XMLSECPTRLISTKLASSGETNAME">xmlSecPtrListKlassGetName</a> (klass)
129 #define <a href="xmlsec-list.html#XMLSECSTRINGLISTID">xmlSecStringListId</a>
130 <font>xmlSecPtrListId</font> <a href="xmlsec-list.html#XMLSECSTRINGLISTGETKLASS">xmlSecStringListGetKlass</a> (void);</pre>
132 <div class="REFSECT1">
133 <a name="XMLSEC-LIST.DESCRIPTION"></a><h2>Description</h2>
134 <p>Generic list structure implementation.</p>
136 <div class="REFSECT1">
137 <a name="XMLSEC-LIST.DETAILS"></a><h2>Details</h2>
138 <div class="REFSECT2">
139 <a name="XMLSECPTRLIST"></a><h3>struct xmlSecPtrList</h3>
140 <pre class="PROGRAMLISTING">struct xmlSecPtrList {
146 xmlSecAllocMode allocMode;
148 <p>The pointers list.</p>
151 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
153 <td align="LEFT" valign="TOP"><a name="AEN10894"><span style="white-space: nowrap"><font>xmlSecPtrListId</font> <code class="STRUCTFIELD">id</code>;</span></a></td>
154 <td align="LEFT" valign="TOP"><p> the list items description.</p></td>
157 <td align="LEFT" valign="TOP"><a name="AEN10900"><span style="white-space: nowrap"><font>xmlSecPtr</font> *<code class="STRUCTFIELD">data</code>;</span></a></td>
158 <td align="LEFT" valign="TOP"><p> the list data.</p></td>
161 <td align="LEFT" valign="TOP"><a name="AEN10906"><span style="white-space: nowrap"><a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> <code class="STRUCTFIELD">use</code>;</span></a></td>
162 <td align="LEFT" valign="TOP"><p> the current list size.</p></td>
165 <td align="LEFT" valign="TOP"><a name="AEN10912"><span style="white-space: nowrap"><a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> <code class="STRUCTFIELD">max</code>;</span></a></td>
166 <td align="LEFT" valign="TOP"><p> the max (allocated) list size.</p></td>
169 <td align="LEFT" valign="TOP"><a name="AEN10918"><span style="white-space: nowrap"><a href="xmlsec-buffer.html#XMLSECALLOCMODE">xmlSecAllocMode</a> <code class="STRUCTFIELD">allocMode</code>;</span></a></td>
170 <td align="LEFT" valign="TOP"><p> the memory allocation mode.</p></td>
175 <div class="REFSECT2">
176 <a name="XMLSECPTRLISTSETDEFAULTALLOCMODE"></a><h3>xmlSecPtrListSetDefaultAllocMode ()</h3>
177 <pre class="PROGRAMLISTING"><font>void</font> xmlSecPtrListSetDefaultAllocMode (<a href="xmlsec-buffer.html#XMLSECALLOCMODE">xmlSecAllocMode</a> defAllocMode,
178 <a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> defInitialSize);</pre>
179 <p>Sets new default allocation mode and minimal initial list size.</p>
182 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
184 <td align="LEFT" valign="TOP"><a name="AEN10935"><span style="white-space: nowrap"><code class="PARAMETER">defAllocMode</code> :</span></a></td>
185 <td align="LEFT" valign="TOP"><p> the new default memory allocation mode.</p></td>
188 <td align="LEFT" valign="TOP"><a name="AEN10940"><span style="white-space: nowrap"><code class="PARAMETER">defInitialSize</code> :</span></a></td>
189 <td align="LEFT" valign="TOP"><p> the new default minimal initial size.</p></td>
194 <div class="REFSECT2">
195 <a name="XMLSECPTRLISTINITIALIZE"></a><h3>xmlSecPtrListInitialize ()</h3>
196 <pre class="PROGRAMLISTING"><font>int</font> xmlSecPtrListInitialize (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list,
197 <font>xmlSecPtrListId</font> id);</pre>
198 <p>Initializes the list of given klass. Caller is responsible
199 for cleaning up by calling <a href="xmlsec-list.html#XMLSECPTRLISTFINALIZE"><span class="TYPE">xmlSecPtrListFinalize</span></a> function.</p>
202 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
204 <td align="LEFT" valign="TOP"><a name="AEN10958"><span style="white-space: nowrap"><code class="PARAMETER">list</code> :</span></a></td>
205 <td align="LEFT" valign="TOP"><p> the pointer to list.</p></td>
208 <td align="LEFT" valign="TOP"><a name="AEN10963"><span style="white-space: nowrap"><code class="PARAMETER">id</code> :</span></a></td>
209 <td align="LEFT" valign="TOP"><p> the list klass.</p></td>
212 <td align="LEFT" valign="TOP"><a name="AEN10968"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
213 <td align="LEFT" valign="TOP"><p> 0 on success or a negative value if an error occurs.</p></td>
218 <div class="REFSECT2">
219 <a name="XMLSECPTRLISTFINALIZE"></a><h3>xmlSecPtrListFinalize ()</h3>
220 <pre class="PROGRAMLISTING"><font>void</font> xmlSecPtrListFinalize (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list);</pre>
221 <p>Cleans up the list initialized with <a href="xmlsec-list.html#XMLSECPTRLISTINITIALIZE"><span class="TYPE">xmlSecPtrListInitialize</span></a>
225 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody><tr>
226 <td align="LEFT" valign="TOP"><a name="AEN10985"><span style="white-space: nowrap"><code class="PARAMETER">list</code> :</span></a></td>
227 <td align="LEFT" valign="TOP"><p> the pointer to list.</p></td>
228 </tr></tbody></table>
231 <div class="REFSECT2">
232 <a name="XMLSECPTRLISTCREATE"></a><h3>xmlSecPtrListCreate ()</h3>
233 <pre class="PROGRAMLISTING"><a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> xmlSecPtrListCreate (<font>xmlSecPtrListId</font> id);</pre>
234 <p>Creates new list object. Caller is responsible for freeing returned list
235 by calling <a href="xmlsec-list.html#XMLSECPTRLISTDESTROY"><span class="TYPE">xmlSecPtrListDestroy</span></a> function.</p>
238 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
240 <td align="LEFT" valign="TOP"><a name="AEN11002"><span style="white-space: nowrap"><code class="PARAMETER">id</code> :</span></a></td>
241 <td align="LEFT" valign="TOP"><p> the list klass.</p></td>
244 <td align="LEFT" valign="TOP"><a name="AEN11007"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
245 <td align="LEFT" valign="TOP"><p> pointer to newly allocated list or NULL if an error occurs.</p></td>
250 <div class="REFSECT2">
251 <a name="XMLSECPTRLISTDESTROY"></a><h3>xmlSecPtrListDestroy ()</h3>
252 <pre class="PROGRAMLISTING"><font>void</font> xmlSecPtrListDestroy (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list);</pre>
253 <p>Destroys <code class="PARAMETER">list</code> created with <a href="xmlsec-list.html#XMLSECPTRLISTCREATE"><span class="TYPE">xmlSecPtrListCreate</span></a> function.</p>
256 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody><tr>
257 <td align="LEFT" valign="TOP"><a name="AEN11025"><span style="white-space: nowrap"><code class="PARAMETER">list</code> :</span></a></td>
258 <td align="LEFT" valign="TOP"><p> the pointer to list.</p></td>
259 </tr></tbody></table>
262 <div class="REFSECT2">
263 <a name="XMLSECPTRLISTEMPTY"></a><h3>xmlSecPtrListEmpty ()</h3>
264 <pre class="PROGRAMLISTING"><font>void</font> xmlSecPtrListEmpty (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list);</pre>
265 <p>Remove all items from <code class="PARAMETER">list</code> (if any).</p>
268 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody><tr>
269 <td align="LEFT" valign="TOP"><a name="AEN11041"><span style="white-space: nowrap"><code class="PARAMETER">list</code> :</span></a></td>
270 <td align="LEFT" valign="TOP"><p> the pointer to list.</p></td>
271 </tr></tbody></table>
274 <div class="REFSECT2">
275 <a name="XMLSECPTRLISTCOPY"></a><h3>xmlSecPtrListCopy ()</h3>
276 <pre class="PROGRAMLISTING"><font>int</font> xmlSecPtrListCopy (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> dst,
277 <a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> src);</pre>
278 <p>Copies <code class="PARAMETER">src</code> list items to <code class="PARAMETER">dst</code> list using <gtkdoclink href="DUPLICATEITEM"><span class="TYPE">duplicateItem</span></gtkdoclink> method
279 of the list klass. If <gtkdoclink href="DUPLICATEITEM"><span class="TYPE">duplicateItem</span></gtkdoclink> method is NULL then
280 we jsut copy pointers to items.</p>
283 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
285 <td align="LEFT" valign="TOP"><a name="AEN11063"><span style="white-space: nowrap"><code class="PARAMETER">dst</code> :</span></a></td>
286 <td align="LEFT" valign="TOP"><p> the pointer to destination list.</p></td>
289 <td align="LEFT" valign="TOP"><a name="AEN11068"><span style="white-space: nowrap"><code class="PARAMETER">src</code> :</span></a></td>
290 <td align="LEFT" valign="TOP"><p> the pointer to source list.</p></td>
293 <td align="LEFT" valign="TOP"><a name="AEN11073"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
294 <td align="LEFT" valign="TOP"><p> 0 on success or a negative value if an error occurs.</p></td>
299 <div class="REFSECT2">
300 <a name="XMLSECPTRLISTDUPLICATE"></a><h3>xmlSecPtrListDuplicate ()</h3>
301 <pre class="PROGRAMLISTING"><font>xmlSecPtrListPtr</font> xmlSecPtrListDuplicate (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list);</pre>
302 <p>Creates a new copy of <code class="PARAMETER">list</code> and all its items.</p>
305 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
307 <td align="LEFT" valign="TOP"><a name="AEN11089"><span style="white-space: nowrap"><code class="PARAMETER">list</code> :</span></a></td>
308 <td align="LEFT" valign="TOP"><p> the pointer to list.</p></td>
311 <td align="LEFT" valign="TOP"><a name="AEN11094"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
312 <td align="LEFT" valign="TOP"><p> pointer to newly allocated list or NULL if an error occurs.</p></td>
317 <div class="REFSECT2">
318 <a name="XMLSECPTRLISTGETSIZE"></a><h3>xmlSecPtrListGetSize ()</h3>
319 <pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> xmlSecPtrListGetSize (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list);</pre>
320 <p>Gets list size.</p>
323 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
325 <td align="LEFT" valign="TOP"><a name="AEN11109"><span style="white-space: nowrap"><code class="PARAMETER">list</code> :</span></a></td>
326 <td align="LEFT" valign="TOP"><p> the pointer to list.</p></td>
329 <td align="LEFT" valign="TOP"><a name="AEN11114"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
330 <td align="LEFT" valign="TOP"><p> the number of itmes in <code class="PARAMETER">list</code>.</p></td>
335 <div class="REFSECT2">
336 <a name="XMLSECPTRLISTGETITEM"></a><h3>xmlSecPtrListGetItem ()</h3>
337 <pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECPTR">xmlSecPtr</a> xmlSecPtrListGetItem (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list,
338 <a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> pos);</pre>
339 <p>Gets item from the list.</p>
342 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
344 <td align="LEFT" valign="TOP"><a name="AEN11131"><span style="white-space: nowrap"><code class="PARAMETER">list</code> :</span></a></td>
345 <td align="LEFT" valign="TOP"><p> the pointer to list.</p></td>
348 <td align="LEFT" valign="TOP"><a name="AEN11136"><span style="white-space: nowrap"><code class="PARAMETER">pos</code> :</span></a></td>
349 <td align="LEFT" valign="TOP"><p> the item position.</p></td>
352 <td align="LEFT" valign="TOP"><a name="AEN11141"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
353 <td align="LEFT" valign="TOP"><p> the list item at position <code class="PARAMETER">pos</code> or NULL if <code class="PARAMETER">pos</code> is greater
354 than the number of items in the list or an error occurs.</p></td>
359 <div class="REFSECT2">
360 <a name="XMLSECPTRLISTADD"></a><h3>xmlSecPtrListAdd ()</h3>
361 <pre class="PROGRAMLISTING"><font>int</font> xmlSecPtrListAdd (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list,
362 <font>xmlSecPtr</font> item);</pre>
363 <p>Adds <code class="PARAMETER">item</code> to the end of the <code class="PARAMETER">list</code>.</p>
366 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
368 <td align="LEFT" valign="TOP"><a name="AEN11161"><span style="white-space: nowrap"><code class="PARAMETER">list</code> :</span></a></td>
369 <td align="LEFT" valign="TOP"><p> the pointer to list.</p></td>
372 <td align="LEFT" valign="TOP"><a name="AEN11166"><span style="white-space: nowrap"><code class="PARAMETER">item</code> :</span></a></td>
373 <td align="LEFT" valign="TOP"><p> the item.</p></td>
376 <td align="LEFT" valign="TOP"><a name="AEN11171"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
377 <td align="LEFT" valign="TOP"><p> 0 on success or a negative value if an error occurs.</p></td>
382 <div class="REFSECT2">
383 <a name="XMLSECPTRLISTSET"></a><h3>xmlSecPtrListSet ()</h3>
384 <pre class="PROGRAMLISTING"><font>int</font> xmlSecPtrListSet (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list,
385 <font>xmlSecPtr</font> item,
386 <a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> pos);</pre>
387 <p>Sets the value of list item at position <code class="PARAMETER">pos</code>. The old value
391 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
393 <td align="LEFT" valign="TOP"><a name="AEN11189"><span style="white-space: nowrap"><code class="PARAMETER">list</code> :</span></a></td>
394 <td align="LEFT" valign="TOP"><p> the pointer to list.</p></td>
397 <td align="LEFT" valign="TOP"><a name="AEN11194"><span style="white-space: nowrap"><code class="PARAMETER">item</code> :</span></a></td>
398 <td align="LEFT" valign="TOP"><p> the item.</p></td>
401 <td align="LEFT" valign="TOP"><a name="AEN11199"><span style="white-space: nowrap"><code class="PARAMETER">pos</code> :</span></a></td>
402 <td align="LEFT" valign="TOP"><p> the pos.</p></td>
405 <td align="LEFT" valign="TOP"><a name="AEN11204"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
406 <td align="LEFT" valign="TOP"><p> 0 on success or a negative value if an error occurs.</p></td>
411 <div class="REFSECT2">
412 <a name="XMLSECPTRLISTREMOVE"></a><h3>xmlSecPtrListRemove ()</h3>
413 <pre class="PROGRAMLISTING"><font>int</font> xmlSecPtrListRemove (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list,
414 <a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> pos);</pre>
415 <p>Destroys list item at the position <code class="PARAMETER">pos</code> and sets it value to NULL.</p>
418 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
420 <td align="LEFT" valign="TOP"><a name="AEN11221"><span style="white-space: nowrap"><code class="PARAMETER">list</code> :</span></a></td>
421 <td align="LEFT" valign="TOP"><p> the pointer to list.</p></td>
424 <td align="LEFT" valign="TOP"><a name="AEN11226"><span style="white-space: nowrap"><code class="PARAMETER">pos</code> :</span></a></td>
425 <td align="LEFT" valign="TOP"><p> the position.</p></td>
428 <td align="LEFT" valign="TOP"><a name="AEN11231"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
429 <td align="LEFT" valign="TOP"><p> 0 on success or a negative value if an error occurs.</p></td>
434 <div class="REFSECT2">
435 <a name="XMLSECPTRLISTDEBUGDUMP"></a><h3>xmlSecPtrListDebugDump ()</h3>
436 <pre class="PROGRAMLISTING"><font>void</font> xmlSecPtrListDebugDump (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list,
437 <font>FILE</font> *output);</pre>
438 <p>Prints debug information about <code class="PARAMETER">list</code> to the <code class="PARAMETER">output</code>.</p>
441 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
443 <td align="LEFT" valign="TOP"><a name="AEN11249"><span style="white-space: nowrap"><code class="PARAMETER">list</code> :</span></a></td>
444 <td align="LEFT" valign="TOP"><p> the pointer to list.</p></td>
447 <td align="LEFT" valign="TOP"><a name="AEN11254"><span style="white-space: nowrap"><code class="PARAMETER">output</code> :</span></a></td>
448 <td align="LEFT" valign="TOP"><p> the pointer to output FILE.</p></td>
453 <div class="REFSECT2">
454 <a name="XMLSECPTRLISTDEBUGXMLDUMP"></a><h3>xmlSecPtrListDebugXmlDump ()</h3>
455 <pre class="PROGRAMLISTING"><font>void</font> xmlSecPtrListDebugXmlDump (<a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrListPtr</a> list,
456 <font>FILE</font> *output);</pre>
457 <p>Prints debug information about <code class="PARAMETER">list</code> to the <code class="PARAMETER">output</code> in XML format.</p>
460 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
462 <td align="LEFT" valign="TOP"><a name="AEN11272"><span style="white-space: nowrap"><code class="PARAMETER">list</code> :</span></a></td>
463 <td align="LEFT" valign="TOP"><p> the pointer to list.</p></td>
466 <td align="LEFT" valign="TOP"><a name="AEN11277"><span style="white-space: nowrap"><code class="PARAMETER">output</code> :</span></a></td>
467 <td align="LEFT" valign="TOP"><p> the pointer to output FILE.</p></td>
472 <div class="REFSECT2">
473 <a name="XMLSECPTRLISTGETNAME"></a><h3>xmlSecPtrListGetName()</h3>
474 <pre class="PROGRAMLISTING">#define xmlSecPtrListGetName(list)</pre>
475 <p>Macro. Returns lists's name.</p>
478 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody><tr>
479 <td align="LEFT" valign="TOP"><a name="AEN11290"><span style="white-space: nowrap"><code class="PARAMETER">list</code> :</span></a></td>
480 <td align="LEFT" valign="TOP"><p> the ponter to list.</p></td>
481 </tr></tbody></table>
484 <div class="REFSECT2">
485 <a name="XMLSECPTRLISTISVALID"></a><h3>xmlSecPtrListIsValid()</h3>
486 <pre class="PROGRAMLISTING">#define xmlSecPtrListIsValid(list)</pre>
487 <p>Macro. Returns 1 if <code class="PARAMETER">list</code> is not NULL and <code class="PARAMETER">list</code>->id is not NULL
491 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody><tr>
492 <td align="LEFT" valign="TOP"><a name="AEN11305"><span style="white-space: nowrap"><code class="PARAMETER">list</code> :</span></a></td>
493 <td align="LEFT" valign="TOP"><p> the pointer to list.</p></td>
494 </tr></tbody></table>
497 <div class="REFSECT2">
498 <a name="XMLSECPTRLISTCHECKID"></a><h3>xmlSecPtrListCheckId()</h3>
499 <pre class="PROGRAMLISTING">#define xmlSecPtrListCheckId(list, dataId)</pre>
500 <p>Macro. Returns 1 if <code class="PARAMETER">list</code> is valid and <code class="PARAMETER">list</code>'s id is equal to <code class="PARAMETER">dataId</code>.</p>
503 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
505 <td align="LEFT" valign="TOP"><a name="AEN11321"><span style="white-space: nowrap"><code class="PARAMETER">list</code> :</span></a></td>
506 <td align="LEFT" valign="TOP"><p> the pointer to list.</p></td>
509 <td align="LEFT" valign="TOP"><a name="AEN11326"><span style="white-space: nowrap"><code class="PARAMETER">dataId</code> :</span></a></td>
510 <td align="LEFT" valign="TOP"><p> the list Id.</p></td>
515 <div class="REFSECT2">
516 <a name="XMLSECPTRLISTIDUNKNOWN"></a><h3>xmlSecPtrListIdUnknown</h3>
517 <pre class="PROGRAMLISTING">#define xmlSecPtrListIdUnknown NULL</pre>
518 <p>The "unknown" id.</p>
522 <div class="REFSECT2">
523 <a name="XMLSECPTRDUPLICATEITEMMETHOD"></a><h3>xmlSecPtrDuplicateItemMethod ()</h3>
524 <pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECPTR">xmlSecPtr</a> (*xmlSecPtrDuplicateItemMethod) (<font>xmlSecPtr</font> ptr);</pre>
525 <p>Duplicates item <code class="PARAMETER">ptr</code>.</p>
528 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
530 <td align="LEFT" valign="TOP"><a name="AEN11349"><span style="white-space: nowrap"><code class="PARAMETER">ptr</code> :</span></a></td>
531 <td align="LEFT" valign="TOP"><p> the poinetr to list item.</p></td>
534 <td align="LEFT" valign="TOP"><a name="AEN11354"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
535 <td align="LEFT" valign="TOP"><p> pointer to new item copy or NULL if an error occurs.</p></td>
540 <div class="REFSECT2">
541 <a name="XMLSECPTRDESTROYITEMMETHOD"></a><h3>xmlSecPtrDestroyItemMethod ()</h3>
542 <pre class="PROGRAMLISTING"><font>void</font> (*xmlSecPtrDestroyItemMethod) (<font>xmlSecPtr</font> ptr);</pre>
543 <p>Destroys list item <code class="PARAMETER">ptr</code>.</p>
546 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody><tr>
547 <td align="LEFT" valign="TOP"><a name="AEN11370"><span style="white-space: nowrap"><code class="PARAMETER">ptr</code> :</span></a></td>
548 <td align="LEFT" valign="TOP"><p> the poinetr to list item.</p></td>
549 </tr></tbody></table>
552 <div class="REFSECT2">
553 <a name="XMLSECPTRDEBUGDUMPITEMMETHOD"></a><h3>xmlSecPtrDebugDumpItemMethod ()</h3>
554 <pre class="PROGRAMLISTING"><font>void</font> (*xmlSecPtrDebugDumpItemMethod) (<font>xmlSecPtr</font> ptr,
555 <font>FILE</font> *output);</pre>
556 <p>Prints debug information about <code class="PARAMETER">item</code> to <code class="PARAMETER">output</code>.</p>
559 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
561 <td align="LEFT" valign="TOP"><a name="AEN11388"><span style="white-space: nowrap"><code class="PARAMETER">ptr</code> :</span></a></td>
562 <td align="LEFT" valign="TOP"><p> the poinetr to list item.</p></td>
565 <td align="LEFT" valign="TOP"><a name="AEN11393"><span style="white-space: nowrap"><code class="PARAMETER">output</code> :</span></a></td>
566 <td align="LEFT" valign="TOP"><p> the output FILE.</p></td>
571 <div class="REFSECT2">
572 <a name="XMLSECPTRLISTKLASS"></a><h3>struct xmlSecPtrListKlass</h3>
573 <pre class="PROGRAMLISTING">struct xmlSecPtrListKlass {
575 xmlSecPtrDuplicateItemMethod duplicateItem;
576 xmlSecPtrDestroyItemMethod destroyItem;
577 xmlSecPtrDebugDumpItemMethod debugDumpItem;
578 xmlSecPtrDebugDumpItemMethod debugXmlDumpItem;
583 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
585 <td align="LEFT" valign="TOP"><a name="AEN11406"><span style="white-space: nowrap">const <font>xmlChar</font> *<code class="STRUCTFIELD">name</code>;</span></a></td>
586 <td align="LEFT" valign="TOP"><p> the list klass name.</p></td>
589 <td align="LEFT" valign="TOP"><a name="AEN11412"><span style="white-space: nowrap"><a href="xmlsec-list.html#XMLSECPTRDUPLICATEITEMMETHOD">xmlSecPtrDuplicateItemMethod</a> <code class="STRUCTFIELD">duplicateItem</code>;</span></a></td>
590 <td align="LEFT" valign="TOP"><p> the duplciate item method.</p></td>
593 <td align="LEFT" valign="TOP"><a name="AEN11418"><span style="white-space: nowrap"><a href="xmlsec-list.html#XMLSECPTRDESTROYITEMMETHOD">xmlSecPtrDestroyItemMethod</a> <code class="STRUCTFIELD">destroyItem</code>;</span></a></td>
594 <td align="LEFT" valign="TOP"><p> the destroy item method.</p></td>
597 <td align="LEFT" valign="TOP"><a name="AEN11424"><span style="white-space: nowrap"><a href="xmlsec-list.html#XMLSECPTRDEBUGDUMPITEMMETHOD">xmlSecPtrDebugDumpItemMethod</a> <code class="STRUCTFIELD">debugDumpItem</code>;</span></a></td>
598 <td align="LEFT" valign="TOP"><p> the debug dump item method.</p></td>
601 <td align="LEFT" valign="TOP"><a name="AEN11430"><span style="white-space: nowrap"><a href="xmlsec-list.html#XMLSECPTRDEBUGDUMPITEMMETHOD">xmlSecPtrDebugDumpItemMethod</a> <code class="STRUCTFIELD">debugXmlDumpItem</code>;</span></a></td>
602 <td align="LEFT" valign="TOP"><p> the debug dump item in xml format method.</p></td>
607 <div class="REFSECT2">
608 <a name="XMLSECPTRLISTKLASSGETNAME"></a><h3>xmlSecPtrListKlassGetName()</h3>
609 <pre class="PROGRAMLISTING">#define xmlSecPtrListKlassGetName(klass)</pre>
610 <p>Macro. Returns the list klass name.</p>
613 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody><tr>
614 <td align="LEFT" valign="TOP"><a name="AEN11444"><span style="white-space: nowrap"><code class="PARAMETER">klass</code> :</span></a></td>
615 <td align="LEFT" valign="TOP"><p> the list klass.
617 </tr></tbody></table>
620 <div class="REFSECT2">
621 <a name="XMLSECSTRINGLISTID"></a><h3>xmlSecStringListId</h3>
622 <pre class="PROGRAMLISTING">#define xmlSecStringListId</pre>
623 <p>Strings list klass.</p>
627 <div class="REFSECT2">
628 <a name="XMLSECSTRINGLISTGETKLASS"></a><h3>xmlSecStringListGetKlass ()</h3>
629 <pre class="PROGRAMLISTING"><font>xmlSecPtrListId</font> xmlSecStringListGetKlass (void);</pre>
630 <p>The strins list class.</p>
633 <table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody><tr>
634 <td align="LEFT" valign="TOP"><a name="AEN11465"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
635 <td align="LEFT" valign="TOP"><p> strings list klass.</p></td>
636 </tr></tbody></table>
639 <table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
640 <td align="left"><a accesskey="p" href="xmlsec-keysmngr.html"><b><<< keysmngr</b></a></td>
641 <td align="right"><a accesskey="n" href="xmlsec-membuf.html"><b>membuf >>></b></a></td>
643 </td></tr></table></td>