xmlsec1/docs/api/xmlsec-bn.html

1130 lines
42 KiB
HTML
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>bn: XML Security Library Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="index.html" title="XML Security Library Reference Manual">
<link rel="up" href="xmlsec-ref.html" title="XML Security Core Library API Reference.">
<link rel="prev" href="xmlsec-base64.html" title="base64">
<link rel="next" href="xmlsec-buffer.html" title="buffer">
<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts">
<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
<a href="#xmlsec-bn.description" class="shortcut">Description</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="xmlsec-base64.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="xmlsec-buffer.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="xmlsec-bn"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="xmlsec-bn.top_of_page"></a>bn</span></h2>
<p>bn — Big numbers support functions.</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="xmlsec-bn.stability-level"></a><h2>Stability Level</h2>
<a href="http://foldoc.org/Stable"><span class="acronym">Stable</span></a>, unless otherwise indicated
</div>
<div class="refsect1">
<a name="xmlsec-bn.functions"></a><h2>Functions</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
</colgroup>
<tbody>
<tr>
<td class="function_type">
<font><span class="returnvalue">xmlSecBnPtr</span></font>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnCreate" title="xmlSecBnCreate ()">xmlSecBnCreate</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">void</span></font>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnDestroy" title="xmlSecBnDestroy ()">xmlSecBnDestroy</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">int</span></font>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnInitialize" title="xmlSecBnInitialize ()">xmlSecBnInitialize</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">void</span></font>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnFinalize" title="xmlSecBnFinalize ()">xmlSecBnFinalize</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="returnvalue">xmlSecByte</span></a> *
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnGetData" title="xmlSecBnGetData ()">xmlSecBnGetData</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">int</span></font>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnSetData" title="xmlSecBnSetData ()">xmlSecBnSetData</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="returnvalue">xmlSecSize</span></a>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnGetSize" title="xmlSecBnGetSize ()">xmlSecBnGetSize</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">void</span></font>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnZero" title="xmlSecBnZero ()">xmlSecBnZero</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">int</span></font>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnFromString" title="xmlSecBnFromString ()">xmlSecBnFromString</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">xmlChar</span></font> *
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnToString" title="xmlSecBnToString ()">xmlSecBnToString</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">int</span></font>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnFromHexString" title="xmlSecBnFromHexString ()">xmlSecBnFromHexString</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">xmlChar</span></font> *
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnToHexString" title="xmlSecBnToHexString ()">xmlSecBnToHexString</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">int</span></font>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnFromDecString" title="xmlSecBnFromDecString ()">xmlSecBnFromDecString</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">xmlChar</span></font> *
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnToDecString" title="xmlSecBnToDecString ()">xmlSecBnToDecString</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">int</span></font>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnMul" title="xmlSecBnMul ()">xmlSecBnMul</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">int</span></font>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnDiv" title="xmlSecBnDiv ()">xmlSecBnDiv</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">int</span></font>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnAdd" title="xmlSecBnAdd ()">xmlSecBnAdd</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">int</span></font>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnReverse" title="xmlSecBnReverse ()">xmlSecBnReverse</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">int</span></font>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnCompare" title="xmlSecBnCompare ()">xmlSecBnCompare</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">int</span></font>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnCompareReverse" title="xmlSecBnCompareReverse ()">xmlSecBnCompareReverse</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">int</span></font>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnGetNodeValue" title="xmlSecBnGetNodeValue ()">xmlSecBnGetNodeValue</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">int</span></font>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnSetNodeValue" title="xmlSecBnSetNodeValue ()">xmlSecBnSetNodeValue</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<font><span class="returnvalue">int</span></font>
</td>
<td class="function_name">
<a class="link" href="xmlsec-bn.html#xmlSecBnBlobSetNodeValue" title="xmlSecBnBlobSetNodeValue ()">xmlSecBnBlobSetNodeValue</a> <span class="c_punctuation">()</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="xmlsec-bn.other"></a><h2>Types and Values</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
</colgroup>
<tbody><tr>
<td class="datatype_keyword">enum</td>
<td class="function_name"><a class="link" href="xmlsec-bn.html#xmlSecBnFormat" title="enum xmlSecBnFormat">xmlSecBnFormat</a></td>
</tr></tbody>
</table></div>
</div>
<div class="refsect1">
<a name="xmlsec-bn.description"></a><h2>Description</h2>
<p></p>
</div>
<div class="refsect1">
<a name="xmlsec-bn.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="xmlSecBnCreate"></a><h3>xmlSecBnCreate ()</h3>
<pre class="programlisting"><font><span class="returnvalue">xmlSecBnPtr</span></font>
xmlSecBnCreate (<em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> size</code></em>);</pre>
<p>Creates a new BN object. Caller is responsible for destroying it
by calling <em class="parameter"><code>xmlSecBnDestroy</code></em>
function.</p>
<div class="refsect3">
<a name="xmlSecBnCreate.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>size</p></td>
<td class="parameter_description"><p>the initial allocated BN size.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnCreate.returns"></a><h4>Returns</h4>
<p> the newly BN or a NULL if an error occurs.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnDestroy"></a><h3>xmlSecBnDestroy ()</h3>
<pre class="programlisting"><font><span class="returnvalue">void</span></font>
xmlSecBnDestroy (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>);</pre>
<p>Destroys <em class="parameter"><code>bn</code></em>
object created with <em class="parameter"><code>xmlSecBnCreate</code></em>
function.</p>
<div class="refsect3">
<a name="xmlSecBnDestroy.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnInitialize"></a><h3>xmlSecBnInitialize ()</h3>
<pre class="programlisting"><font><span class="returnvalue">int</span></font>
xmlSecBnInitialize (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>,
<em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> size</code></em>);</pre>
<p>Initializes a BN object. Caller is responsible for destroying it
by calling <em class="parameter"><code>xmlSecBnFinalize</code></em>
function.</p>
<div class="refsect3">
<a name="xmlSecBnInitialize.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>size</p></td>
<td class="parameter_description"><p>the initial allocated BN size.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnInitialize.returns"></a><h4>Returns</h4>
<p> 0 on success or a negative value if an error occurs.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnFinalize"></a><h3>xmlSecBnFinalize ()</h3>
<pre class="programlisting"><font><span class="returnvalue">void</span></font>
xmlSecBnFinalize (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>);</pre>
<p>Destroys <em class="parameter"><code>bn</code></em>
object created with <em class="parameter"><code>xmlSecBnInitialize</code></em>
function.</p>
<div class="refsect3">
<a name="xmlSecBnFinalize.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnGetData"></a><h3>xmlSecBnGetData ()</h3>
<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="returnvalue">xmlSecByte</span></a> *
xmlSecBnGetData (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>);</pre>
<p>Gets pointer to the binary <em class="parameter"><code>bn</code></em>
representation.</p>
<div class="refsect3">
<a name="xmlSecBnGetData.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnGetData.returns"></a><h4>Returns</h4>
<p> pointer to binary BN data or NULL if an error occurs.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnSetData"></a><h3>xmlSecBnSetData ()</h3>
<pre class="programlisting"><font><span class="returnvalue">int</span></font>
xmlSecBnSetData (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>,
<em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *data</code></em>,
<em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> size</code></em>);</pre>
<p>Sets the value of <em class="parameter"><code>bn</code></em>
to <em class="parameter"><code>data</code></em>
.</p>
<div class="refsect3">
<a name="xmlSecBnSetData.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>data</p></td>
<td class="parameter_description"><p>the pointer to new BN binary data.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>size</p></td>
<td class="parameter_description"><p>the size of new BN data.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnSetData.returns"></a><h4>Returns</h4>
<p> 0 on success or a negative value if an error occurs.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnGetSize"></a><h3>xmlSecBnGetSize ()</h3>
<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="returnvalue">xmlSecSize</span></a>
xmlSecBnGetSize (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>);</pre>
<p>Gets the size of binary data in <em class="parameter"><code>bn</code></em>
.</p>
<div class="refsect3">
<a name="xmlSecBnGetSize.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnGetSize.returns"></a><h4>Returns</h4>
<p> the size of binary data.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnZero"></a><h3>xmlSecBnZero ()</h3>
<pre class="programlisting"><font><span class="returnvalue">void</span></font>
xmlSecBnZero (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>);</pre>
<p>Sets the value of <em class="parameter"><code>bn</code></em>
to zero.</p>
<div class="refsect3">
<a name="xmlSecBnZero.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnFromString"></a><h3>xmlSecBnFromString ()</h3>
<pre class="programlisting"><font><span class="returnvalue">int</span></font>
xmlSecBnFromString (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>,
<em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *str</code></em>,
<em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> base</code></em>);</pre>
<p>Reads <em class="parameter"><code>bn</code></em>
from string <em class="parameter"><code>str</code></em>
assuming it has base <em class="parameter"><code>base</code></em>
.</p>
<div class="refsect3">
<a name="xmlSecBnFromString.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>str</p></td>
<td class="parameter_description"><p>the string with BN.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>base</p></td>
<td class="parameter_description"><p>the base for <em class="parameter"><code>str</code></em>
.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnFromString.returns"></a><h4>Returns</h4>
<p> 0 on success or a negative value if an error occurs.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnToString"></a><h3>xmlSecBnToString ()</h3>
<pre class="programlisting"><font><span class="returnvalue">xmlChar</span></font> *
xmlSecBnToString (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>,
<em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> base</code></em>);</pre>
<p>Writes <em class="parameter"><code>bn</code></em>
to string with base <em class="parameter"><code>base</code></em>
. Caller is responsible for
freeing returned string with <em class="parameter"><code>xmlFree</code></em>
.</p>
<div class="refsect3">
<a name="xmlSecBnToString.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>base</p></td>
<td class="parameter_description"><p>the base for returned string.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnToString.returns"></a><h4>Returns</h4>
<p> the string represenataion if BN or a NULL if an error occurs.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnFromHexString"></a><h3>xmlSecBnFromHexString ()</h3>
<pre class="programlisting"><font><span class="returnvalue">int</span></font>
xmlSecBnFromHexString (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>,
<em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *str</code></em>);</pre>
<p>Reads <em class="parameter"><code>bn</code></em>
from hex string <em class="parameter"><code>str</code></em>
.</p>
<div class="refsect3">
<a name="xmlSecBnFromHexString.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>str</p></td>
<td class="parameter_description"><p>the string with BN.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnFromHexString.returns"></a><h4>Returns</h4>
<p> 0 on success or a negative value if an error occurs.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnToHexString"></a><h3>xmlSecBnToHexString ()</h3>
<pre class="programlisting"><font><span class="returnvalue">xmlChar</span></font> *
xmlSecBnToHexString (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>);</pre>
<p>Writes <em class="parameter"><code>bn</code></em>
to hex string. Caller is responsible for
freeing returned string with <em class="parameter"><code>xmlFree</code></em>
.</p>
<div class="refsect3">
<a name="xmlSecBnToHexString.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnToHexString.returns"></a><h4>Returns</h4>
<p> the string represenataion if BN or a NULL if an error occurs.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnFromDecString"></a><h3>xmlSecBnFromDecString ()</h3>
<pre class="programlisting"><font><span class="returnvalue">int</span></font>
xmlSecBnFromDecString (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>,
<em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *str</code></em>);</pre>
<p>Reads <em class="parameter"><code>bn</code></em>
from decimal string <em class="parameter"><code>str</code></em>
.</p>
<div class="refsect3">
<a name="xmlSecBnFromDecString.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>str</p></td>
<td class="parameter_description"><p>the string with BN.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnFromDecString.returns"></a><h4>Returns</h4>
<p> 0 on success or a negative value if an error occurs.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnToDecString"></a><h3>xmlSecBnToDecString ()</h3>
<pre class="programlisting"><font><span class="returnvalue">xmlChar</span></font> *
xmlSecBnToDecString (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>);</pre>
<p>Writes <em class="parameter"><code>bn</code></em>
to decimal string. Caller is responsible for
freeing returned string with <em class="parameter"><code>xmlFree</code></em>
.</p>
<div class="refsect3">
<a name="xmlSecBnToDecString.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnToDecString.returns"></a><h4>Returns</h4>
<p> the string represenataion if BN or a NULL if an error occurs.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnMul"></a><h3>xmlSecBnMul ()</h3>
<pre class="programlisting"><font><span class="returnvalue">int</span></font>
xmlSecBnMul (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>,
<em class="parameter"><code><font><span class="type">int</span></font> multiplier</code></em>);</pre>
<p>Multiplies <em class="parameter"><code>bn</code></em>
with <em class="parameter"><code>multiplier</code></em>
.</p>
<div class="refsect3">
<a name="xmlSecBnMul.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>multiplier</p></td>
<td class="parameter_description"><p>the multiplier.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnMul.returns"></a><h4>Returns</h4>
<p> 0 on success or a negative value if an error occurs.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnDiv"></a><h3>xmlSecBnDiv ()</h3>
<pre class="programlisting"><font><span class="returnvalue">int</span></font>
xmlSecBnDiv (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>,
<em class="parameter"><code><font><span class="type">int</span></font> divider</code></em>,
<em class="parameter"><code><font><span class="type">int</span></font> *mod</code></em>);</pre>
<p>Divides <em class="parameter"><code>bn</code></em>
by <em class="parameter"><code>divider</code></em>
and places modulus into <em class="parameter"><code>mod</code></em>
.</p>
<div class="refsect3">
<a name="xmlSecBnDiv.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>divider</p></td>
<td class="parameter_description"><p>the divider</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>mod</p></td>
<td class="parameter_description"><p>the pointer for modulus result.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnDiv.returns"></a><h4>Returns</h4>
<p> 0 on success or a negative value if an error occurs.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnAdd"></a><h3>xmlSecBnAdd ()</h3>
<pre class="programlisting"><font><span class="returnvalue">int</span></font>
xmlSecBnAdd (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>,
<em class="parameter"><code><font><span class="type">int</span></font> delta</code></em>);</pre>
<p>Adds <em class="parameter"><code>delta</code></em>
to <em class="parameter"><code>bn</code></em>
.</p>
<div class="refsect3">
<a name="xmlSecBnAdd.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>delta</p></td>
<td class="parameter_description"><p>the delta.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnAdd.returns"></a><h4>Returns</h4>
<p> 0 on success or a negative value if an error occurs.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnReverse"></a><h3>xmlSecBnReverse ()</h3>
<pre class="programlisting"><font><span class="returnvalue">int</span></font>
xmlSecBnReverse (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>);</pre>
<p>Reverses bytes order in <em class="parameter"><code>bn</code></em>
.</p>
<div class="refsect3">
<a name="xmlSecBnReverse.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnReverse.returns"></a><h4>Returns</h4>
<p> 0 on success or a negative value if an error occurs.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnCompare"></a><h3>xmlSecBnCompare ()</h3>
<pre class="programlisting"><font><span class="returnvalue">int</span></font>
xmlSecBnCompare (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>,
<em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *data</code></em>,
<em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> dataSize</code></em>);</pre>
<p>Compares the <em class="parameter"><code>bn</code></em>
with <em class="parameter"><code>data</code></em>
.</p>
<div class="refsect3">
<a name="xmlSecBnCompare.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>data</p></td>
<td class="parameter_description"><p>the data to compare BN to.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>dataSize</p></td>
<td class="parameter_description"><p>the <em class="parameter"><code>data</code></em>
size.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnCompare.returns"></a><h4>Returns</h4>
<p> 0 if data is equal, negative value if <em class="parameter"><code>bn</code></em>
is less or positive value if <em class="parameter"><code>bn</code></em>
is greater than <em class="parameter"><code>data</code></em>
.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnCompareReverse"></a><h3>xmlSecBnCompareReverse ()</h3>
<pre class="programlisting"><font><span class="returnvalue">int</span></font>
xmlSecBnCompareReverse (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>,
<em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *data</code></em>,
<em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> dataSize</code></em>);</pre>
<p>Compares the <em class="parameter"><code>bn</code></em>
with reverse <em class="parameter"><code>data</code></em>
.</p>
<div class="refsect3">
<a name="xmlSecBnCompareReverse.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>data</p></td>
<td class="parameter_description"><p>the data to compare BN to.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>dataSize</p></td>
<td class="parameter_description"><p>the <em class="parameter"><code>data</code></em>
size.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnCompareReverse.returns"></a><h4>Returns</h4>
<p> 0 if data is equal, negative value if <em class="parameter"><code>bn</code></em>
is less or positive value if <em class="parameter"><code>bn</code></em>
is greater than <em class="parameter"><code>data</code></em>
.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnGetNodeValue"></a><h3>xmlSecBnGetNodeValue ()</h3>
<pre class="programlisting"><font><span class="returnvalue">int</span></font>
xmlSecBnGetNodeValue (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>,
<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> cur</code></em>,
<em class="parameter"><code><a class="link" href="xmlsec-bn.html#xmlSecBnFormat" title="enum xmlSecBnFormat"><span class="type">xmlSecBnFormat</span></a> format</code></em>,
<em class="parameter"><code><font><span class="type">int</span></font> reverse</code></em>);</pre>
<p>Converts the node content from <em class="parameter"><code>format</code></em>
to <em class="parameter"><code>bn</code></em>
.</p>
<div class="refsect3">
<a name="xmlSecBnGetNodeValue.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>cur</p></td>
<td class="parameter_description"><p>the pointer to an XML node.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>format</p></td>
<td class="parameter_description"><p>the BN format.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>reverse</p></td>
<td class="parameter_description"><p>if set then reverse read buffer after reading.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnGetNodeValue.returns"></a><h4>Returns</h4>
<p> 0 on success and a negative values if an error occurs.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnSetNodeValue"></a><h3>xmlSecBnSetNodeValue ()</h3>
<pre class="programlisting"><font><span class="returnvalue">int</span></font>
xmlSecBnSetNodeValue (<em class="parameter"><code><font><span class="type">xmlSecBnPtr</span></font> bn</code></em>,
<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> cur</code></em>,
<em class="parameter"><code><a class="link" href="xmlsec-bn.html#xmlSecBnFormat" title="enum xmlSecBnFormat"><span class="type">xmlSecBnFormat</span></a> format</code></em>,
<em class="parameter"><code><font><span class="type">int</span></font> reverse</code></em>,
<em class="parameter"><code><font><span class="type">int</span></font> addLineBreaks</code></em>);</pre>
<p>Converts the <em class="parameter"><code>bn</code></em>
and sets it to node content.</p>
<div class="refsect3">
<a name="xmlSecBnSetNodeValue.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>bn</p></td>
<td class="parameter_description"><p>the pointer to BN.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>cur</p></td>
<td class="parameter_description"><p>the pointer to an XML node.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>format</p></td>
<td class="parameter_description"><p>the BN format.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>reverse</p></td>
<td class="parameter_description"><p>the flag that indicates whether to reverse the buffer before writing.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>addLineBreaks</p></td>
<td class="parameter_description"><p>the flag; it is equal to 1 then linebreaks will be added before and after new buffer content.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnSetNodeValue.returns"></a><h4>Returns</h4>
<p> 0 on success and a negative values if an error occurs.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="xmlSecBnBlobSetNodeValue"></a><h3>xmlSecBnBlobSetNodeValue ()</h3>
<pre class="programlisting"><font><span class="returnvalue">int</span></font>
xmlSecBnBlobSetNodeValue (<em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *data</code></em>,
<em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> dataSize</code></em>,
<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> cur</code></em>,
<em class="parameter"><code><a class="link" href="xmlsec-bn.html#xmlSecBnFormat" title="enum xmlSecBnFormat"><span class="type">xmlSecBnFormat</span></a> format</code></em>,
<em class="parameter"><code><font><span class="type">int</span></font> reverse</code></em>,
<em class="parameter"><code><font><span class="type">int</span></font> addLineBreaks</code></em>);</pre>
<p>Converts the <em class="parameter"><code>blob</code></em>
and sets it to node content.</p>
<div class="refsect3">
<a name="xmlSecBnBlobSetNodeValue.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>data</p></td>
<td class="parameter_description"><p>the pointer to BN blob.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>dataSize</p></td>
<td class="parameter_description"><p>the size of BN blob.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>cur</p></td>
<td class="parameter_description"><p>the pointer to an XML node.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>format</p></td>
<td class="parameter_description"><p>the BN format.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>reverse</p></td>
<td class="parameter_description"><p>the flag that indicates whether to reverse the buffer before writing.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>addLineBreaks</p></td>
<td class="parameter_description"><p>if the flag is equal to 1 then
linebreaks will be added before and after
new buffer content.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="xmlSecBnBlobSetNodeValue.returns"></a><h4>Returns</h4>
<p> 0 on success and a negative values if an error occurs.</p>
</div>
</div>
</div>
<div class="refsect1">
<a name="xmlsec-bn.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
<a name="xmlSecBnFormat"></a><h3>enum xmlSecBnFormat</h3>
<p>The big numbers formats.</p>
<div class="refsect3">
<a name="xmlSecBnFormat.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col>
<col>
<col>
</colgroup>
<tbody>
<tr>
<td class="enum_member_name"><p><a name="xmlSecBnBase64"></a>xmlSecBnBase64</p></td>
<td class="enum_member_description"><p>the base64 decoded binary blob.</p></td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="xmlSecBnHex"></a>xmlSecBnHex</p></td>
<td class="enum_member_description"><p>the hex number.</p></td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="xmlSecBnDec"></a>xmlSecBnDec</p></td>
<td class="enum_member_description"><p>the decimal number.</p></td>
<td class="enum_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.27</div>
</body>
</html>