<refentry id="xmlsec-mscrypto-crypto">
<refmeta>
<refentrytitle role="top_of_page" id="xmlsec-mscrypto-crypto.top_of_page">crypto</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>XMLSEC-MSCRYPTO Library</refmiscinfo>
</refmeta>

<refnamediv>
<refname>crypto</refname>
<refpurpose>Crypto transforms implementation for MS Crypto.</refpurpose>
</refnamediv>

<refsynopsisdiv id="xmlsec-mscrypto-crypto.synopsis" role="synopsis">
<title role="synopsis.title">Synopsis</title>

<synopsis>
<link linkend="xmlSecCryptoDLFunctions">xmlSecCryptoDLFunctionsPtr</link>  <link linkend="xmlSecCryptoGetFunctions-mscrypto">xmlSecCryptoGetFunctions_mscrypto</link>
                                                        (void);
<link linkend="int">int</link>                 <link linkend="xmlSecMSCryptoInit">xmlSecMSCryptoInit</link>                  (void);
<link linkend="int">int</link>                 <link linkend="xmlSecMSCryptoShutdown">xmlSecMSCryptoShutdown</link>              (void);
<link linkend="int">int</link>                 <link linkend="xmlSecMSCryptoKeysMngrInit">xmlSecMSCryptoKeysMngrInit</link>          (<link linkend="xmlSecKeysMngr">xmlSecKeysMngrPtr</link> mngr);
<link linkend="int">int</link>                 <link linkend="xmlSecMSCryptoGenerateRandom">xmlSecMSCryptoGenerateRandom</link>        (<link linkend="xmlSecBuffer">xmlSecBufferPtr</link> buffer,
                                                         <link linkend="size-t">size_t</link> size);
<link linkend="void">void</link>                <link linkend="xmlSecMSCryptoErrorsDefaultCallback">xmlSecMSCryptoErrorsDefaultCallback</link> (const <link linkend="char">char</link> *file,
                                                         <link linkend="int">int</link> line,
                                                         const <link linkend="char">char</link> *func,
                                                         const <link linkend="char">char</link> *errorObject,
                                                         const <link linkend="char">char</link> *errorSubject,
                                                         <link linkend="int">int</link> reason,
                                                         const <link linkend="char">char</link> *msg);
<link linkend="LPWSTR--CAPS">LPWSTR</link>              <link linkend="xmlSecMSCryptoConvertLocaleToUnicode">xmlSecMSCryptoConvertLocaleToUnicode</link>
                                                        (const <link linkend="char">char</link> *str);
<link linkend="LPWSTR--CAPS">LPWSTR</link>              <link linkend="xmlSecMSCryptoConvertUtf8ToUnicode">xmlSecMSCryptoConvertUtf8ToUnicode</link>  (const <link linkend="xmlChar">xmlChar</link> *str);
<link linkend="xmlChar">xmlChar</link>*            <link linkend="xmlSecMSCryptoConvertUnicodeToUtf8">xmlSecMSCryptoConvertUnicodeToUtf8</link>  (<link linkend="LPCWSTR--CAPS">LPCWSTR</link> str);
<link linkend="xmlChar">xmlChar</link>*            <link linkend="xmlSecMSCryptoConvertLocaleToUtf8">xmlSecMSCryptoConvertLocaleToUtf8</link>   (const <link linkend="char">char</link> *str);
<link linkend="char">char</link>*               <link linkend="xmlSecMSCryptoConvertUtf8ToLocale">xmlSecMSCryptoConvertUtf8ToLocale</link>   (const <link linkend="xmlChar">xmlChar</link> *str);
<link linkend="xmlChar">xmlChar</link>*            <link linkend="xmlSecMSCryptoConvertTstrToUtf8">xmlSecMSCryptoConvertTstrToUtf8</link>     (<link linkend="LPCTSTR--CAPS">LPCTSTR</link> str);
<link linkend="LPTSTR--CAPS">LPTSTR</link>              <link linkend="xmlSecMSCryptoConvertUtf8ToTstr">xmlSecMSCryptoConvertUtf8ToTstr</link>     (const <link linkend="xmlChar">xmlChar</link> *str);
#define             <link linkend="xmlSecMSCryptoKeyDataDsaId">xmlSecMSCryptoKeyDataDsaId</link>
<link linkend="xmlSecKeyDataId">xmlSecKeyDataId</link>     <link linkend="xmlSecMSCryptoKeyDataDsaGetKlass">xmlSecMSCryptoKeyDataDsaGetKlass</link>    (void);
#define             <link linkend="xmlSecMSCryptoTransformDsaSha1Id">xmlSecMSCryptoTransformDsaSha1Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformDsaSha1GetKlass">xmlSecMSCryptoTransformDsaSha1GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoKeyDataGost2001Id">xmlSecMSCryptoKeyDataGost2001Id</link>
<link linkend="xmlSecKeyDataId">xmlSecKeyDataId</link>     <link linkend="xmlSecMSCryptoKeyDataGost2001GetKlass">xmlSecMSCryptoKeyDataGost2001GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformGost2001GostR3411-94Id">xmlSecMSCryptoTransformGost2001GostR3411_94Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformGost2001GostR3411-94GetKlass">xmlSecMSCryptoTransformGost2001GostR3411_94GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoKeyDataRsaId">xmlSecMSCryptoKeyDataRsaId</link>
<link linkend="xmlSecKeyDataId">xmlSecKeyDataId</link>     <link linkend="xmlSecMSCryptoKeyDataRsaGetKlass">xmlSecMSCryptoKeyDataRsaGetKlass</link>    (void);
#define             <link linkend="xmlSecMSCryptoTransformRsaMd5Id">xmlSecMSCryptoTransformRsaMd5Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformRsaMd5GetKlass">xmlSecMSCryptoTransformRsaMd5GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformRsaSha1Id">xmlSecMSCryptoTransformRsaSha1Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformRsaSha1GetKlass">xmlSecMSCryptoTransformRsaSha1GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformRsaSha256Id">xmlSecMSCryptoTransformRsaSha256Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformRsaSha256GetKlass">xmlSecMSCryptoTransformRsaSha256GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformRsaSha384Id">xmlSecMSCryptoTransformRsaSha384Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformRsaSha384GetKlass">xmlSecMSCryptoTransformRsaSha384GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformRsaSha512Id">xmlSecMSCryptoTransformRsaSha512Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformRsaSha512GetKlass">xmlSecMSCryptoTransformRsaSha512GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformRsaPkcs1Id">xmlSecMSCryptoTransformRsaPkcs1Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformRsaPkcs1GetKlass">xmlSecMSCryptoTransformRsaPkcs1GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformRsaOaepId">xmlSecMSCryptoTransformRsaOaepId</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformRsaOaepGetKlass">xmlSecMSCryptoTransformRsaOaepGetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformMd5Id">xmlSecMSCryptoTransformMd5Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformMd5GetKlass">xmlSecMSCryptoTransformMd5GetKlass</link>  (void);
#define             <link linkend="xmlSecMSCryptoTransformSha1Id">xmlSecMSCryptoTransformSha1Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformSha1GetKlass">xmlSecMSCryptoTransformSha1GetKlass</link> (void);
#define             <link linkend="xmlSecMSCryptoTransformSha256Id">xmlSecMSCryptoTransformSha256Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformSha256GetKlass">xmlSecMSCryptoTransformSha256GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformSha384Id">xmlSecMSCryptoTransformSha384Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformSha384GetKlass">xmlSecMSCryptoTransformSha384GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformSha512Id">xmlSecMSCryptoTransformSha512Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformSha512GetKlass">xmlSecMSCryptoTransformSha512GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformGostR3411-94Id">xmlSecMSCryptoTransformGostR3411_94Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformGostR3411-94GetKlass">xmlSecMSCryptoTransformGostR3411_94GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoKeyDataAesId">xmlSecMSCryptoKeyDataAesId</link>
<link linkend="xmlSecKeyDataId">xmlSecKeyDataId</link>     <link linkend="xmlSecMSCryptoKeyDataAesGetKlass">xmlSecMSCryptoKeyDataAesGetKlass</link>    (void);
<link linkend="int">int</link>                 <link linkend="xmlSecMSCryptoKeyDataAesSet">xmlSecMSCryptoKeyDataAesSet</link>         (<link linkend="xmlSecKeyData">xmlSecKeyDataPtr</link> data,
                                                         const <link linkend="xmlSecByte">xmlSecByte</link> *buf,
                                                         <link linkend="xmlSecSize">xmlSecSize</link> bufSize);
#define             <link linkend="xmlSecMSCryptoTransformAes128CbcId">xmlSecMSCryptoTransformAes128CbcId</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformAes128CbcGetKlass">xmlSecMSCryptoTransformAes128CbcGetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformAes192CbcId">xmlSecMSCryptoTransformAes192CbcId</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformAes192CbcGetKlass">xmlSecMSCryptoTransformAes192CbcGetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformAes256CbcId">xmlSecMSCryptoTransformAes256CbcId</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformAes256CbcGetKlass">xmlSecMSCryptoTransformAes256CbcGetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformKWAes128Id">xmlSecMSCryptoTransformKWAes128Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformKWAes128GetKlass">xmlSecMSCryptoTransformKWAes128GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformKWAes192Id">xmlSecMSCryptoTransformKWAes192Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformKWAes192GetKlass">xmlSecMSCryptoTransformKWAes192GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformKWAes256Id">xmlSecMSCryptoTransformKWAes256Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformKWAes256GetKlass">xmlSecMSCryptoTransformKWAes256GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoKeyDataDesId">xmlSecMSCryptoKeyDataDesId</link>
<link linkend="xmlSecKeyDataId">xmlSecKeyDataId</link>     <link linkend="xmlSecMSCryptoKeyDataDesGetKlass">xmlSecMSCryptoKeyDataDesGetKlass</link>    (void);
#define             <link linkend="xmlSecMSCryptoTransformDes3CbcId">xmlSecMSCryptoTransformDes3CbcId</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformDes3CbcGetKlass">xmlSecMSCryptoTransformDes3CbcGetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformKWDes3Id">xmlSecMSCryptoTransformKWDes3Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformKWDes3GetKlass">xmlSecMSCryptoTransformKWDes3GetKlass</link>
                                                        (void);
<link linkend="int">int</link>                 <link linkend="xmlSecMSCryptoHmacGetMinOutputLength">xmlSecMSCryptoHmacGetMinOutputLength</link>
                                                        (void);
<link linkend="void">void</link>                <link linkend="xmlSecMSCryptoHmacSetMinOutputLength">xmlSecMSCryptoHmacSetMinOutputLength</link>
                                                        (<link linkend="int">int</link> min_length);
#define             <link linkend="xmlSecMSCryptoKeyDataHmacId">xmlSecMSCryptoKeyDataHmacId</link>
<link linkend="xmlSecKeyDataId">xmlSecKeyDataId</link>     <link linkend="xmlSecMSCryptoKeyDataHmacGetKlass">xmlSecMSCryptoKeyDataHmacGetKlass</link>   (void);
<link linkend="int">int</link>                 <link linkend="xmlSecMSCryptoKeyDataHmacSet">xmlSecMSCryptoKeyDataHmacSet</link>        (<link linkend="xmlSecKeyData">xmlSecKeyDataPtr</link> data,
                                                         const <link linkend="xmlSecByte">xmlSecByte</link> *buf,
                                                         <link linkend="xmlSecSize">xmlSecSize</link> bufSize);
#define             <link linkend="xmlSecMSCryptoTransformHmacMd5Id">xmlSecMSCryptoTransformHmacMd5Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformHmacMd5GetKlass">xmlSecMSCryptoTransformHmacMd5GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformHmacSha1Id">xmlSecMSCryptoTransformHmacSha1Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformHmacSha1GetKlass">xmlSecMSCryptoTransformHmacSha1GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformHmacSha256Id">xmlSecMSCryptoTransformHmacSha256Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformHmacSha256GetKlass">xmlSecMSCryptoTransformHmacSha256GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformHmacSha384Id">xmlSecMSCryptoTransformHmacSha384Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformHmacSha384GetKlass">xmlSecMSCryptoTransformHmacSha384GetKlass</link>
                                                        (void);
#define             <link linkend="xmlSecMSCryptoTransformHmacSha512Id">xmlSecMSCryptoTransformHmacSha512Id</link>
<link linkend="xmlSecTransformId">xmlSecTransformId</link>   <link linkend="xmlSecMSCryptoTransformHmacSha512GetKlass">xmlSecMSCryptoTransformHmacSha512GetKlass</link>
                                                        (void);
</synopsis>
</refsynopsisdiv>









<refsect1 id="xmlsec-mscrypto-crypto.description" role="desc">
<title role="desc.title">Description</title>
<para>
Crypto transforms implementation for MS Crypto.
</para>
</refsect1>

<refsect1 id="xmlsec-mscrypto-crypto.details" role="details">
<title role="details.title">Details</title>
<refsect2 id="xmlSecCryptoGetFunctions-mscrypto" role="function">
<title>xmlSecCryptoGetFunctions_mscrypto ()</title>
<indexterm zone="xmlSecCryptoGetFunctions-mscrypto"><primary sortas="xmlSecCryptoGetFunctions_mscrypto">xmlSecCryptoGetFunctions_mscrypto</primary></indexterm><programlisting><link linkend="xmlSecCryptoDLFunctions">xmlSecCryptoDLFunctionsPtr</link>  xmlSecCryptoGetFunctions_mscrypto
                                                        (void);</programlisting>
<para>
Gets MSCrypto specific functions table.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> xmlsec-mscrypto functions table.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoInit" role="function">
<title>xmlSecMSCryptoInit ()</title>
<indexterm zone="xmlSecMSCryptoInit"><primary sortas="xmlSecMSCryptoInit">xmlSecMSCryptoInit</primary></indexterm><programlisting><link linkend="int">int</link>                 xmlSecMSCryptoInit                  (void);</programlisting>
<para>
XMLSec library specific crypto engine initialization.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> 0 on success or a negative value otherwise.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoShutdown" role="function">
<title>xmlSecMSCryptoShutdown ()</title>
<indexterm zone="xmlSecMSCryptoShutdown"><primary sortas="xmlSecMSCryptoShutdown">xmlSecMSCryptoShutdown</primary></indexterm><programlisting><link linkend="int">int</link>                 xmlSecMSCryptoShutdown              (void);</programlisting>
<para>
XMLSec library specific crypto engine shutdown.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> 0 on success or a negative value otherwise.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoKeysMngrInit" role="function">
<title>xmlSecMSCryptoKeysMngrInit ()</title>
<indexterm zone="xmlSecMSCryptoKeysMngrInit"><primary sortas="xmlSecMSCryptoKeysMngrInit">xmlSecMSCryptoKeysMngrInit</primary></indexterm><programlisting><link linkend="int">int</link>                 xmlSecMSCryptoKeysMngrInit          (<link linkend="xmlSecKeysMngr">xmlSecKeysMngrPtr</link> mngr);</programlisting>
<para>
Adds MSCrypto specific key data stores in keys manager.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>mngr</parameter>&#160;:</term>
<listitem><simpara>               the pointer to keys manager.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> 0 on success or a negative value otherwise.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoGenerateRandom" role="function">
<title>xmlSecMSCryptoGenerateRandom ()</title>
<indexterm zone="xmlSecMSCryptoGenerateRandom"><primary sortas="xmlSecMSCryptoGenerateRandom">xmlSecMSCryptoGenerateRandom</primary></indexterm><programlisting><link linkend="int">int</link>                 xmlSecMSCryptoGenerateRandom        (<link linkend="xmlSecBuffer">xmlSecBufferPtr</link> buffer,
                                                         <link linkend="size-t">size_t</link> size);</programlisting>
<para>
Generates <parameter>size</parameter> random bytes and puts result in <parameter>buffer</parameter>
(not implemented yet).</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>buffer</parameter>&#160;:</term>
<listitem><simpara>             the destination buffer.
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>size</parameter>&#160;:</term>
<listitem><simpara>               the numer of bytes to generate.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> 0 on success or a negative value otherwise.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoErrorsDefaultCallback" role="function">
<title>xmlSecMSCryptoErrorsDefaultCallback ()</title>
<indexterm zone="xmlSecMSCryptoErrorsDefaultCallback"><primary sortas="xmlSecMSCryptoErrorsDefaultCallback">xmlSecMSCryptoErrorsDefaultCallback</primary></indexterm><programlisting><link linkend="void">void</link>                xmlSecMSCryptoErrorsDefaultCallback (const <link linkend="char">char</link> *file,
                                                         <link linkend="int">int</link> line,
                                                         const <link linkend="char">char</link> *func,
                                                         const <link linkend="char">char</link> *errorObject,
                                                         const <link linkend="char">char</link> *errorSubject,
                                                         <link linkend="int">int</link> reason,
                                                         const <link linkend="char">char</link> *msg);</programlisting>
<para>
The default errors reporting callback function.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>file</parameter>&#160;:</term>
<listitem><simpara>               the error location file name (__FILE__ macro).
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>line</parameter>&#160;:</term>
<listitem><simpara>               the error location line number (__LINE__ macro).
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>func</parameter>&#160;:</term>
<listitem><simpara>               the error location function name (__FUNCTION__ macro).
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>errorObject</parameter>&#160;:</term>
<listitem><simpara>        the error specific error object
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>errorSubject</parameter>&#160;:</term>
<listitem><simpara>       the error specific error subject.
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>reason</parameter>&#160;:</term>
<listitem><simpara>             the error code.
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>msg</parameter>&#160;:</term>
<listitem><simpara>                the additional error message.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoConvertLocaleToUnicode" role="function">
<title>xmlSecMSCryptoConvertLocaleToUnicode ()</title>
<indexterm zone="xmlSecMSCryptoConvertLocaleToUnicode"><primary sortas="xmlSecMSCryptoConvertLocaleToUnicode">xmlSecMSCryptoConvertLocaleToUnicode</primary></indexterm><programlisting><link linkend="LPWSTR--CAPS">LPWSTR</link>              xmlSecMSCryptoConvertLocaleToUnicode
                                                        (const <link linkend="char">char</link> *str);</programlisting>
<para>
Converts input string from current system locale to Unicode.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>str</parameter>&#160;:</term>
<listitem><simpara>         the string to convert.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a pointer to newly allocated string (must be freed with xmlFree) or NULL if an error occurs.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoConvertUtf8ToUnicode" role="function">
<title>xmlSecMSCryptoConvertUtf8ToUnicode ()</title>
<indexterm zone="xmlSecMSCryptoConvertUtf8ToUnicode"><primary sortas="xmlSecMSCryptoConvertUtf8ToUnicode">xmlSecMSCryptoConvertUtf8ToUnicode</primary></indexterm><programlisting><link linkend="LPWSTR--CAPS">LPWSTR</link>              xmlSecMSCryptoConvertUtf8ToUnicode  (const <link linkend="xmlChar">xmlChar</link> *str);</programlisting>
<para>
Converts input string from UTF8 to Unicode.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>str</parameter>&#160;:</term>
<listitem><simpara>         the string to convert.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a pointer to newly allocated string (must be freed with xmlFree) or NULL if an error occurs.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoConvertUnicodeToUtf8" role="function">
<title>xmlSecMSCryptoConvertUnicodeToUtf8 ()</title>
<indexterm zone="xmlSecMSCryptoConvertUnicodeToUtf8"><primary sortas="xmlSecMSCryptoConvertUnicodeToUtf8">xmlSecMSCryptoConvertUnicodeToUtf8</primary></indexterm><programlisting><link linkend="xmlChar">xmlChar</link>*            xmlSecMSCryptoConvertUnicodeToUtf8  (<link linkend="LPCWSTR--CAPS">LPCWSTR</link> str);</programlisting>
<para>
Converts input string from Unicode to UTF8.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>str</parameter>&#160;:</term>
<listitem><simpara>         the string to convert.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a pointer to newly allocated string (must be freed with xmlFree) or NULL if an error occurs.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoConvertLocaleToUtf8" role="function">
<title>xmlSecMSCryptoConvertLocaleToUtf8 ()</title>
<indexterm zone="xmlSecMSCryptoConvertLocaleToUtf8"><primary sortas="xmlSecMSCryptoConvertLocaleToUtf8">xmlSecMSCryptoConvertLocaleToUtf8</primary></indexterm><programlisting><link linkend="xmlChar">xmlChar</link>*            xmlSecMSCryptoConvertLocaleToUtf8   (const <link linkend="char">char</link> *str);</programlisting>
<para>
Converts input string from locale to UTF8.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>str</parameter>&#160;:</term>
<listitem><simpara>         the string to convert.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a pointer to newly allocated string (must be freed with xmlFree) or NULL if an error occurs.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoConvertUtf8ToLocale" role="function">
<title>xmlSecMSCryptoConvertUtf8ToLocale ()</title>
<indexterm zone="xmlSecMSCryptoConvertUtf8ToLocale"><primary sortas="xmlSecMSCryptoConvertUtf8ToLocale">xmlSecMSCryptoConvertUtf8ToLocale</primary></indexterm><programlisting><link linkend="char">char</link>*               xmlSecMSCryptoConvertUtf8ToLocale   (const <link linkend="xmlChar">xmlChar</link> *str);</programlisting>
<para>
Converts input string from UTF8 to locale.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>str</parameter>&#160;:</term>
<listitem><simpara>         the string to convert.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a pointer to newly allocated string (must be freed with xmlFree) or NULL if an error occurs.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoConvertTstrToUtf8" role="function">
<title>xmlSecMSCryptoConvertTstrToUtf8 ()</title>
<indexterm zone="xmlSecMSCryptoConvertTstrToUtf8"><primary sortas="xmlSecMSCryptoConvertTstrToUtf8">xmlSecMSCryptoConvertTstrToUtf8</primary></indexterm><programlisting><link linkend="xmlChar">xmlChar</link>*            xmlSecMSCryptoConvertTstrToUtf8     (<link linkend="LPCTSTR--CAPS">LPCTSTR</link> str);</programlisting>
<para>
Converts input string from TSTR (locale or Unicode) to UTF8.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>str</parameter>&#160;:</term>
<listitem><simpara>         the string to convert.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a pointer to newly allocated string (must be freed with xmlFree) or NULL if an error occurs.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoConvertUtf8ToTstr" role="function">
<title>xmlSecMSCryptoConvertUtf8ToTstr ()</title>
<indexterm zone="xmlSecMSCryptoConvertUtf8ToTstr"><primary sortas="xmlSecMSCryptoConvertUtf8ToTstr">xmlSecMSCryptoConvertUtf8ToTstr</primary></indexterm><programlisting><link linkend="LPTSTR--CAPS">LPTSTR</link>              xmlSecMSCryptoConvertUtf8ToTstr     (const <link linkend="xmlChar">xmlChar</link> *str);</programlisting>
<para>
Converts input string from UTF8 to TSTR (locale or Unicode).</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>str</parameter>&#160;:</term>
<listitem><simpara>         the string to convert.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a pointer to newly allocated string (must be freed with xmlFree) or NULL if an error occurs.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoKeyDataDsaId" role="macro">
<title>xmlSecMSCryptoKeyDataDsaId</title>
<indexterm zone="xmlSecMSCryptoKeyDataDsaId"><primary sortas="xmlSecMSCryptoKeyDataDsaId">xmlSecMSCryptoKeyDataDsaId</primary></indexterm><programlisting>#define             xmlSecMSCryptoKeyDataDsaId</programlisting>
<para>
The DSA key klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoKeyDataDsaGetKlass" role="function">
<title>xmlSecMSCryptoKeyDataDsaGetKlass ()</title>
<indexterm zone="xmlSecMSCryptoKeyDataDsaGetKlass"><primary sortas="xmlSecMSCryptoKeyDataDsaGetKlass">xmlSecMSCryptoKeyDataDsaGetKlass</primary></indexterm><programlisting><link linkend="xmlSecKeyDataId">xmlSecKeyDataId</link>     xmlSecMSCryptoKeyDataDsaGetKlass    (void);</programlisting>
<para>
The DSA key data klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> pointer to DSA key data klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformDsaSha1Id" role="macro">
<title>xmlSecMSCryptoTransformDsaSha1Id</title>
<indexterm zone="xmlSecMSCryptoTransformDsaSha1Id"><primary sortas="xmlSecMSCryptoTransformDsaSha1Id">xmlSecMSCryptoTransformDsaSha1Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformDsaSha1Id</programlisting>
<para>
The DSA SHA1 signature transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformDsaSha1GetKlass" role="function">
<title>xmlSecMSCryptoTransformDsaSha1GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformDsaSha1GetKlass"><primary sortas="xmlSecMSCryptoTransformDsaSha1GetKlass">xmlSecMSCryptoTransformDsaSha1GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformDsaSha1GetKlass
                                                        (void);</programlisting>
<para>
The DSA-SHA1 signature transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> DSA-SHA1 signature transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoKeyDataGost2001Id" role="macro">
<title>xmlSecMSCryptoKeyDataGost2001Id</title>
<indexterm zone="xmlSecMSCryptoKeyDataGost2001Id"><primary sortas="xmlSecMSCryptoKeyDataGost2001Id">xmlSecMSCryptoKeyDataGost2001Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoKeyDataGost2001Id</programlisting>
<para>
The GOST2001 key klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoKeyDataGost2001GetKlass" role="function">
<title>xmlSecMSCryptoKeyDataGost2001GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoKeyDataGost2001GetKlass"><primary sortas="xmlSecMSCryptoKeyDataGost2001GetKlass">xmlSecMSCryptoKeyDataGost2001GetKlass</primary></indexterm><programlisting><link linkend="xmlSecKeyDataId">xmlSecKeyDataId</link>     xmlSecMSCryptoKeyDataGost2001GetKlass
                                                        (void);</programlisting>
<para>
The GOST2001 key data klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> pointer to GOST2001 key data klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformGost2001GostR3411-94Id" role="macro">
<title>xmlSecMSCryptoTransformGost2001GostR3411_94Id</title>
<indexterm zone="xmlSecMSCryptoTransformGost2001GostR3411-94Id"><primary sortas="xmlSecMSCryptoTransformGost2001GostR3411_94Id">xmlSecMSCryptoTransformGost2001GostR3411_94Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformGost2001GostR3411_94Id</programlisting>
<para>
The GOST2001 GOSTR3411_94 signature transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformGost2001GostR3411-94GetKlass" role="function">
<title>xmlSecMSCryptoTransformGost2001GostR3411_94GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformGost2001GostR3411-94GetKlass"><primary sortas="xmlSecMSCryptoTransformGost2001GostR3411_94GetKlass">xmlSecMSCryptoTransformGost2001GostR3411_94GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformGost2001GostR3411_94GetKlass
                                                        (void);</programlisting>
<para>
The GOST2001-GOSTR3411_94 signature transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> GOST2001-GOSTR3411_94 signature transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoKeyDataRsaId" role="macro">
<title>xmlSecMSCryptoKeyDataRsaId</title>
<indexterm zone="xmlSecMSCryptoKeyDataRsaId"><primary sortas="xmlSecMSCryptoKeyDataRsaId">xmlSecMSCryptoKeyDataRsaId</primary></indexterm><programlisting>#define             xmlSecMSCryptoKeyDataRsaId</programlisting>
<para>
The RSA key klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoKeyDataRsaGetKlass" role="function">
<title>xmlSecMSCryptoKeyDataRsaGetKlass ()</title>
<indexterm zone="xmlSecMSCryptoKeyDataRsaGetKlass"><primary sortas="xmlSecMSCryptoKeyDataRsaGetKlass">xmlSecMSCryptoKeyDataRsaGetKlass</primary></indexterm><programlisting><link linkend="xmlSecKeyDataId">xmlSecKeyDataId</link>     xmlSecMSCryptoKeyDataRsaGetKlass    (void);</programlisting>
<para>
The MSCrypto RSA CertKey data klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> pointer to MSCrypto RSA key data klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformRsaMd5Id" role="macro">
<title>xmlSecMSCryptoTransformRsaMd5Id</title>
<indexterm zone="xmlSecMSCryptoTransformRsaMd5Id"><primary sortas="xmlSecMSCryptoTransformRsaMd5Id">xmlSecMSCryptoTransformRsaMd5Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformRsaMd5Id</programlisting>
<para>
The RSA-MD5 signature transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformRsaMd5GetKlass" role="function">
<title>xmlSecMSCryptoTransformRsaMd5GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformRsaMd5GetKlass"><primary sortas="xmlSecMSCryptoTransformRsaMd5GetKlass">xmlSecMSCryptoTransformRsaMd5GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformRsaMd5GetKlass
                                                        (void);</programlisting>
<para>
The RSA-MD5 signature transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> RSA-MD5 signature transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformRsaSha1Id" role="macro">
<title>xmlSecMSCryptoTransformRsaSha1Id</title>
<indexterm zone="xmlSecMSCryptoTransformRsaSha1Id"><primary sortas="xmlSecMSCryptoTransformRsaSha1Id">xmlSecMSCryptoTransformRsaSha1Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformRsaSha1Id</programlisting>
<para>
The RSA-SHA1 signature transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformRsaSha1GetKlass" role="function">
<title>xmlSecMSCryptoTransformRsaSha1GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformRsaSha1GetKlass"><primary sortas="xmlSecMSCryptoTransformRsaSha1GetKlass">xmlSecMSCryptoTransformRsaSha1GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformRsaSha1GetKlass
                                                        (void);</programlisting>
<para>
The RSA-SHA1 signature transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> RSA-SHA1 signature transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformRsaSha256Id" role="macro">
<title>xmlSecMSCryptoTransformRsaSha256Id</title>
<indexterm zone="xmlSecMSCryptoTransformRsaSha256Id"><primary sortas="xmlSecMSCryptoTransformRsaSha256Id">xmlSecMSCryptoTransformRsaSha256Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformRsaSha256Id</programlisting>
<para>
The RSA-SHA256 signature transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformRsaSha256GetKlass" role="function">
<title>xmlSecMSCryptoTransformRsaSha256GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformRsaSha256GetKlass"><primary sortas="xmlSecMSCryptoTransformRsaSha256GetKlass">xmlSecMSCryptoTransformRsaSha256GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformRsaSha256GetKlass
                                                        (void);</programlisting>
<para>
The RSA-SHA256 signature transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> RSA-SHA256 signature transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformRsaSha384Id" role="macro">
<title>xmlSecMSCryptoTransformRsaSha384Id</title>
<indexterm zone="xmlSecMSCryptoTransformRsaSha384Id"><primary sortas="xmlSecMSCryptoTransformRsaSha384Id">xmlSecMSCryptoTransformRsaSha384Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformRsaSha384Id</programlisting>
<para>
The RSA-SHA384 signature transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformRsaSha384GetKlass" role="function">
<title>xmlSecMSCryptoTransformRsaSha384GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformRsaSha384GetKlass"><primary sortas="xmlSecMSCryptoTransformRsaSha384GetKlass">xmlSecMSCryptoTransformRsaSha384GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformRsaSha384GetKlass
                                                        (void);</programlisting>
<para>
The RSA-SHA384 signature transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> RSA-SHA384 signature transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformRsaSha512Id" role="macro">
<title>xmlSecMSCryptoTransformRsaSha512Id</title>
<indexterm zone="xmlSecMSCryptoTransformRsaSha512Id"><primary sortas="xmlSecMSCryptoTransformRsaSha512Id">xmlSecMSCryptoTransformRsaSha512Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformRsaSha512Id</programlisting>
<para>
The RSA-SHA512 signature transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformRsaSha512GetKlass" role="function">
<title>xmlSecMSCryptoTransformRsaSha512GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformRsaSha512GetKlass"><primary sortas="xmlSecMSCryptoTransformRsaSha512GetKlass">xmlSecMSCryptoTransformRsaSha512GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformRsaSha512GetKlass
                                                        (void);</programlisting>
<para>
The RSA-SHA512 signature transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> RSA-SHA512 signature transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformRsaPkcs1Id" role="macro">
<title>xmlSecMSCryptoTransformRsaPkcs1Id</title>
<indexterm zone="xmlSecMSCryptoTransformRsaPkcs1Id"><primary sortas="xmlSecMSCryptoTransformRsaPkcs1Id">xmlSecMSCryptoTransformRsaPkcs1Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformRsaPkcs1Id</programlisting>
<para>
The RSA PKCS1 key transport transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformRsaPkcs1GetKlass" role="function">
<title>xmlSecMSCryptoTransformRsaPkcs1GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformRsaPkcs1GetKlass"><primary sortas="xmlSecMSCryptoTransformRsaPkcs1GetKlass">xmlSecMSCryptoTransformRsaPkcs1GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformRsaPkcs1GetKlass
                                                        (void);</programlisting>
<para>
The RSA-PKCS1 key transport transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> RSA-PKCS1 key transport transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformRsaOaepId" role="macro">
<title>xmlSecMSCryptoTransformRsaOaepId</title>
<indexterm zone="xmlSecMSCryptoTransformRsaOaepId"><primary sortas="xmlSecMSCryptoTransformRsaOaepId">xmlSecMSCryptoTransformRsaOaepId</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformRsaOaepId</programlisting>
<para>
The RSA PKCS1 key transport transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformRsaOaepGetKlass" role="function">
<title>xmlSecMSCryptoTransformRsaOaepGetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformRsaOaepGetKlass"><primary sortas="xmlSecMSCryptoTransformRsaOaepGetKlass">xmlSecMSCryptoTransformRsaOaepGetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformRsaOaepGetKlass
                                                        (void);</programlisting>
<para>
The RSA-OAEP key transport transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> RSA-OAEP key transport transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformMd5Id" role="macro">
<title>xmlSecMSCryptoTransformMd5Id</title>
<indexterm zone="xmlSecMSCryptoTransformMd5Id"><primary sortas="xmlSecMSCryptoTransformMd5Id">xmlSecMSCryptoTransformMd5Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformMd5Id</programlisting>
<para>
The MD5 digest transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformMd5GetKlass" role="function">
<title>xmlSecMSCryptoTransformMd5GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformMd5GetKlass"><primary sortas="xmlSecMSCryptoTransformMd5GetKlass">xmlSecMSCryptoTransformMd5GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformMd5GetKlass  (void);</programlisting>
<para>
SHA-1 digest transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> pointer to SHA-1 digest transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformSha1Id" role="macro">
<title>xmlSecMSCryptoTransformSha1Id</title>
<indexterm zone="xmlSecMSCryptoTransformSha1Id"><primary sortas="xmlSecMSCryptoTransformSha1Id">xmlSecMSCryptoTransformSha1Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformSha1Id</programlisting>
<para>
The SHA1 digest transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformSha1GetKlass" role="function">
<title>xmlSecMSCryptoTransformSha1GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformSha1GetKlass"><primary sortas="xmlSecMSCryptoTransformSha1GetKlass">xmlSecMSCryptoTransformSha1GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformSha1GetKlass (void);</programlisting>
<para>
SHA-1 digest transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> pointer to SHA-1 digest transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformSha256Id" role="macro">
<title>xmlSecMSCryptoTransformSha256Id</title>
<indexterm zone="xmlSecMSCryptoTransformSha256Id"><primary sortas="xmlSecMSCryptoTransformSha256Id">xmlSecMSCryptoTransformSha256Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformSha256Id</programlisting>
<para>
The SHA256 digest transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformSha256GetKlass" role="function">
<title>xmlSecMSCryptoTransformSha256GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformSha256GetKlass"><primary sortas="xmlSecMSCryptoTransformSha256GetKlass">xmlSecMSCryptoTransformSha256GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformSha256GetKlass
                                                        (void);</programlisting>
<para>
SHA-256 digest transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> pointer to SHA-256 digest transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformSha384Id" role="macro">
<title>xmlSecMSCryptoTransformSha384Id</title>
<indexterm zone="xmlSecMSCryptoTransformSha384Id"><primary sortas="xmlSecMSCryptoTransformSha384Id">xmlSecMSCryptoTransformSha384Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformSha384Id</programlisting>
<para>
The SHA384 digest transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformSha384GetKlass" role="function">
<title>xmlSecMSCryptoTransformSha384GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformSha384GetKlass"><primary sortas="xmlSecMSCryptoTransformSha384GetKlass">xmlSecMSCryptoTransformSha384GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformSha384GetKlass
                                                        (void);</programlisting>
<para>
SHA-384 digest transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> pointer to SHA-384 digest transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformSha512Id" role="macro">
<title>xmlSecMSCryptoTransformSha512Id</title>
<indexterm zone="xmlSecMSCryptoTransformSha512Id"><primary sortas="xmlSecMSCryptoTransformSha512Id">xmlSecMSCryptoTransformSha512Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformSha512Id</programlisting>
<para>
The SHA512 digest transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformSha512GetKlass" role="function">
<title>xmlSecMSCryptoTransformSha512GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformSha512GetKlass"><primary sortas="xmlSecMSCryptoTransformSha512GetKlass">xmlSecMSCryptoTransformSha512GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformSha512GetKlass
                                                        (void);</programlisting>
<para>
SHA-512 digest transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> pointer to SHA-512 digest transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformGostR3411-94Id" role="macro">
<title>xmlSecMSCryptoTransformGostR3411_94Id</title>
<indexterm zone="xmlSecMSCryptoTransformGostR3411-94Id"><primary sortas="xmlSecMSCryptoTransformGostR3411_94Id">xmlSecMSCryptoTransformGostR3411_94Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformGostR3411_94Id</programlisting>
<para>
The GOSTR3411_94 digest transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformGostR3411-94GetKlass" role="function">
<title>xmlSecMSCryptoTransformGostR3411_94GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformGostR3411-94GetKlass"><primary sortas="xmlSecMSCryptoTransformGostR3411_94GetKlass">xmlSecMSCryptoTransformGostR3411_94GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformGostR3411_94GetKlass
                                                        (void);</programlisting>
<para>
GOSTR3411_94 digest transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> pointer to GOSTR3411_94 digest transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoKeyDataAesId" role="macro">
<title>xmlSecMSCryptoKeyDataAesId</title>
<indexterm zone="xmlSecMSCryptoKeyDataAesId"><primary sortas="xmlSecMSCryptoKeyDataAesId">xmlSecMSCryptoKeyDataAesId</primary></indexterm><programlisting>#define             xmlSecMSCryptoKeyDataAesId</programlisting>
<para>
The AES key data klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoKeyDataAesGetKlass" role="function">
<title>xmlSecMSCryptoKeyDataAesGetKlass ()</title>
<indexterm zone="xmlSecMSCryptoKeyDataAesGetKlass"><primary sortas="xmlSecMSCryptoKeyDataAesGetKlass">xmlSecMSCryptoKeyDataAesGetKlass</primary></indexterm><programlisting><link linkend="xmlSecKeyDataId">xmlSecKeyDataId</link>     xmlSecMSCryptoKeyDataAesGetKlass    (void);</programlisting>
<para>
The AES key data klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> AES key data klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoKeyDataAesSet" role="function">
<title>xmlSecMSCryptoKeyDataAesSet ()</title>
<indexterm zone="xmlSecMSCryptoKeyDataAesSet"><primary sortas="xmlSecMSCryptoKeyDataAesSet">xmlSecMSCryptoKeyDataAesSet</primary></indexterm><programlisting><link linkend="int">int</link>                 xmlSecMSCryptoKeyDataAesSet         (<link linkend="xmlSecKeyData">xmlSecKeyDataPtr</link> data,
                                                         const <link linkend="xmlSecByte">xmlSecByte</link> *buf,
                                                         <link linkend="xmlSecSize">xmlSecSize</link> bufSize);</programlisting>
<para>
Sets the value of AES key data.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>data</parameter>&#160;:</term>
<listitem><simpara>               the pointer to AES key data.
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>buf</parameter>&#160;:</term>
<listitem><simpara>                the pointer to key value.
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>bufSize</parameter>&#160;:</term>
<listitem><simpara>            the key value size (in bytes).
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> 0 on success or a negative value if an error occurs.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformAes128CbcId" role="macro">
<title>xmlSecMSCryptoTransformAes128CbcId</title>
<indexterm zone="xmlSecMSCryptoTransformAes128CbcId"><primary sortas="xmlSecMSCryptoTransformAes128CbcId">xmlSecMSCryptoTransformAes128CbcId</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformAes128CbcId</programlisting>
<para>
The AES128 CBC cipher transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformAes128CbcGetKlass" role="function">
<title>xmlSecMSCryptoTransformAes128CbcGetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformAes128CbcGetKlass"><primary sortas="xmlSecMSCryptoTransformAes128CbcGetKlass">xmlSecMSCryptoTransformAes128CbcGetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformAes128CbcGetKlass
                                                        (void);</programlisting>
<para>
AES 128 CBC encryption transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> pointer to AES 128 CBC encryption transform.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformAes192CbcId" role="macro">
<title>xmlSecMSCryptoTransformAes192CbcId</title>
<indexterm zone="xmlSecMSCryptoTransformAes192CbcId"><primary sortas="xmlSecMSCryptoTransformAes192CbcId">xmlSecMSCryptoTransformAes192CbcId</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformAes192CbcId</programlisting>
<para>
The AES192 CBC cipher transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformAes192CbcGetKlass" role="function">
<title>xmlSecMSCryptoTransformAes192CbcGetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformAes192CbcGetKlass"><primary sortas="xmlSecMSCryptoTransformAes192CbcGetKlass">xmlSecMSCryptoTransformAes192CbcGetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformAes192CbcGetKlass
                                                        (void);</programlisting>
<para>
AES 192 CBC encryption transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> pointer to AES 192 CBC encryption transform.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformAes256CbcId" role="macro">
<title>xmlSecMSCryptoTransformAes256CbcId</title>
<indexterm zone="xmlSecMSCryptoTransformAes256CbcId"><primary sortas="xmlSecMSCryptoTransformAes256CbcId">xmlSecMSCryptoTransformAes256CbcId</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformAes256CbcId</programlisting>
<para>
The AES256 CBC cipher transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformAes256CbcGetKlass" role="function">
<title>xmlSecMSCryptoTransformAes256CbcGetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformAes256CbcGetKlass"><primary sortas="xmlSecMSCryptoTransformAes256CbcGetKlass">xmlSecMSCryptoTransformAes256CbcGetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformAes256CbcGetKlass
                                                        (void);</programlisting>
<para>
AES 256 CBC encryption transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> pointer to AES 256 CBC encryption transform.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformKWAes128Id" role="macro">
<title>xmlSecMSCryptoTransformKWAes128Id</title>
<indexterm zone="xmlSecMSCryptoTransformKWAes128Id"><primary sortas="xmlSecMSCryptoTransformKWAes128Id">xmlSecMSCryptoTransformKWAes128Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformKWAes128Id</programlisting>
<para>
The AES 128 key wrap transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformKWAes128GetKlass" role="function">
<title>xmlSecMSCryptoTransformKWAes128GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformKWAes128GetKlass"><primary sortas="xmlSecMSCryptoTransformKWAes128GetKlass">xmlSecMSCryptoTransformKWAes128GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformKWAes128GetKlass
                                                        (void);</programlisting>
<para>
The AES-128 kew wrapper transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> AES-128 kew wrapper transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformKWAes192Id" role="macro">
<title>xmlSecMSCryptoTransformKWAes192Id</title>
<indexterm zone="xmlSecMSCryptoTransformKWAes192Id"><primary sortas="xmlSecMSCryptoTransformKWAes192Id">xmlSecMSCryptoTransformKWAes192Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformKWAes192Id</programlisting>
<para>
The AES 192 key wrap transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformKWAes192GetKlass" role="function">
<title>xmlSecMSCryptoTransformKWAes192GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformKWAes192GetKlass"><primary sortas="xmlSecMSCryptoTransformKWAes192GetKlass">xmlSecMSCryptoTransformKWAes192GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformKWAes192GetKlass
                                                        (void);</programlisting>
<para>
The AES-192 kew wrapper transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> AES-192 kew wrapper transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformKWAes256Id" role="macro">
<title>xmlSecMSCryptoTransformKWAes256Id</title>
<indexterm zone="xmlSecMSCryptoTransformKWAes256Id"><primary sortas="xmlSecMSCryptoTransformKWAes256Id">xmlSecMSCryptoTransformKWAes256Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformKWAes256Id</programlisting>
<para>
The AES 256 key wrap transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformKWAes256GetKlass" role="function">
<title>xmlSecMSCryptoTransformKWAes256GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformKWAes256GetKlass"><primary sortas="xmlSecMSCryptoTransformKWAes256GetKlass">xmlSecMSCryptoTransformKWAes256GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformKWAes256GetKlass
                                                        (void);</programlisting>
<para>
The AES-256 kew wrapper transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> AES-256 kew wrapper transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoKeyDataDesId" role="macro">
<title>xmlSecMSCryptoKeyDataDesId</title>
<indexterm zone="xmlSecMSCryptoKeyDataDesId"><primary sortas="xmlSecMSCryptoKeyDataDesId">xmlSecMSCryptoKeyDataDesId</primary></indexterm><programlisting>#define             xmlSecMSCryptoKeyDataDesId</programlisting>
<para>
The DES key data klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoKeyDataDesGetKlass" role="function">
<title>xmlSecMSCryptoKeyDataDesGetKlass ()</title>
<indexterm zone="xmlSecMSCryptoKeyDataDesGetKlass"><primary sortas="xmlSecMSCryptoKeyDataDesGetKlass">xmlSecMSCryptoKeyDataDesGetKlass</primary></indexterm><programlisting><link linkend="xmlSecKeyDataId">xmlSecKeyDataId</link>     xmlSecMSCryptoKeyDataDesGetKlass    (void);</programlisting>
<para>
The DES key data klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> DES key data klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformDes3CbcId" role="macro">
<title>xmlSecMSCryptoTransformDes3CbcId</title>
<indexterm zone="xmlSecMSCryptoTransformDes3CbcId"><primary sortas="xmlSecMSCryptoTransformDes3CbcId">xmlSecMSCryptoTransformDes3CbcId</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformDes3CbcId</programlisting>
<para>
The DES3 CBC cipher transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformDes3CbcGetKlass" role="function">
<title>xmlSecMSCryptoTransformDes3CbcGetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformDes3CbcGetKlass"><primary sortas="xmlSecMSCryptoTransformDes3CbcGetKlass">xmlSecMSCryptoTransformDes3CbcGetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformDes3CbcGetKlass
                                                        (void);</programlisting>
<para>
Triple DES CBC encryption transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> pointer to Triple DES encryption transform.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformKWDes3Id" role="macro">
<title>xmlSecMSCryptoTransformKWDes3Id</title>
<indexterm zone="xmlSecMSCryptoTransformKWDes3Id"><primary sortas="xmlSecMSCryptoTransformKWDes3Id">xmlSecMSCryptoTransformKWDes3Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformKWDes3Id</programlisting>
<para>
The DES3 KW transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformKWDes3GetKlass" role="function">
<title>xmlSecMSCryptoTransformKWDes3GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformKWDes3GetKlass"><primary sortas="xmlSecMSCryptoTransformKWDes3GetKlass">xmlSecMSCryptoTransformKWDes3GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformKWDes3GetKlass
                                                        (void);</programlisting>
<para>
The Triple DES key wrapper transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> Triple DES key wrapper transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoHmacGetMinOutputLength" role="function">
<title>xmlSecMSCryptoHmacGetMinOutputLength ()</title>
<indexterm zone="xmlSecMSCryptoHmacGetMinOutputLength"><primary sortas="xmlSecMSCryptoHmacGetMinOutputLength">xmlSecMSCryptoHmacGetMinOutputLength</primary></indexterm><programlisting><link linkend="int">int</link>                 xmlSecMSCryptoHmacGetMinOutputLength
                                                        (void);</programlisting>
<para>
Gets the value of min HMAC length.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the min HMAC output length
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoHmacSetMinOutputLength" role="function">
<title>xmlSecMSCryptoHmacSetMinOutputLength ()</title>
<indexterm zone="xmlSecMSCryptoHmacSetMinOutputLength"><primary sortas="xmlSecMSCryptoHmacSetMinOutputLength">xmlSecMSCryptoHmacSetMinOutputLength</primary></indexterm><programlisting><link linkend="void">void</link>                xmlSecMSCryptoHmacSetMinOutputLength
                                                        (<link linkend="int">int</link> min_length);</programlisting>
<para>
Sets the min HMAC output length</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>min_length</parameter>&#160;:</term>
<listitem><simpara> the new min length
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoKeyDataHmacId" role="macro">
<title>xmlSecMSCryptoKeyDataHmacId</title>
<indexterm zone="xmlSecMSCryptoKeyDataHmacId"><primary sortas="xmlSecMSCryptoKeyDataHmacId">xmlSecMSCryptoKeyDataHmacId</primary></indexterm><programlisting>#define             xmlSecMSCryptoKeyDataHmacId</programlisting>
<para>
The DHMAC key klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoKeyDataHmacGetKlass" role="function">
<title>xmlSecMSCryptoKeyDataHmacGetKlass ()</title>
<indexterm zone="xmlSecMSCryptoKeyDataHmacGetKlass"><primary sortas="xmlSecMSCryptoKeyDataHmacGetKlass">xmlSecMSCryptoKeyDataHmacGetKlass</primary></indexterm><programlisting><link linkend="xmlSecKeyDataId">xmlSecKeyDataId</link>     xmlSecMSCryptoKeyDataHmacGetKlass   (void);</programlisting>
<para>
The HMAC key data klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> HMAC key data klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoKeyDataHmacSet" role="function">
<title>xmlSecMSCryptoKeyDataHmacSet ()</title>
<indexterm zone="xmlSecMSCryptoKeyDataHmacSet"><primary sortas="xmlSecMSCryptoKeyDataHmacSet">xmlSecMSCryptoKeyDataHmacSet</primary></indexterm><programlisting><link linkend="int">int</link>                 xmlSecMSCryptoKeyDataHmacSet        (<link linkend="xmlSecKeyData">xmlSecKeyDataPtr</link> data,
                                                         const <link linkend="xmlSecByte">xmlSecByte</link> *buf,
                                                         <link linkend="xmlSecSize">xmlSecSize</link> bufSize);</programlisting>
<para>
Sets the value of HMAC key data.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>data</parameter>&#160;:</term>
<listitem><simpara>               the pointer to HMAC key data.
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>buf</parameter>&#160;:</term>
<listitem><simpara>                the pointer to key value.
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>bufSize</parameter>&#160;:</term>
<listitem><simpara>            the key value size (in bytes).
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> 0 on success or a negative value if an error occurs.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformHmacMd5Id" role="macro">
<title>xmlSecMSCryptoTransformHmacMd5Id</title>
<indexterm zone="xmlSecMSCryptoTransformHmacMd5Id"><primary sortas="xmlSecMSCryptoTransformHmacMd5Id">xmlSecMSCryptoTransformHmacMd5Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformHmacMd5Id</programlisting>
<para>
The HMAC with MD5 signature transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformHmacMd5GetKlass" role="function">
<title>xmlSecMSCryptoTransformHmacMd5GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformHmacMd5GetKlass"><primary sortas="xmlSecMSCryptoTransformHmacMd5GetKlass">xmlSecMSCryptoTransformHmacMd5GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformHmacMd5GetKlass
                                                        (void);</programlisting>
<para>
The HMAC-MD5 transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the HMAC-MD5 transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformHmacSha1Id" role="macro">
<title>xmlSecMSCryptoTransformHmacSha1Id</title>
<indexterm zone="xmlSecMSCryptoTransformHmacSha1Id"><primary sortas="xmlSecMSCryptoTransformHmacSha1Id">xmlSecMSCryptoTransformHmacSha1Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformHmacSha1Id</programlisting>
<para>
The HMAC with SHA1 signature transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformHmacSha1GetKlass" role="function">
<title>xmlSecMSCryptoTransformHmacSha1GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformHmacSha1GetKlass"><primary sortas="xmlSecMSCryptoTransformHmacSha1GetKlass">xmlSecMSCryptoTransformHmacSha1GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformHmacSha1GetKlass
                                                        (void);</programlisting>
<para>
The HMAC-SHA1 transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the HMAC-SHA1 transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformHmacSha256Id" role="macro">
<title>xmlSecMSCryptoTransformHmacSha256Id</title>
<indexterm zone="xmlSecMSCryptoTransformHmacSha256Id"><primary sortas="xmlSecMSCryptoTransformHmacSha256Id">xmlSecMSCryptoTransformHmacSha256Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformHmacSha256Id</programlisting>
<para>
The HMAC with SHA256 signature transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformHmacSha256GetKlass" role="function">
<title>xmlSecMSCryptoTransformHmacSha256GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformHmacSha256GetKlass"><primary sortas="xmlSecMSCryptoTransformHmacSha256GetKlass">xmlSecMSCryptoTransformHmacSha256GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformHmacSha256GetKlass
                                                        (void);</programlisting>
<para>
The HMAC-SHA256 transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the HMAC-SHA256 transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformHmacSha384Id" role="macro">
<title>xmlSecMSCryptoTransformHmacSha384Id</title>
<indexterm zone="xmlSecMSCryptoTransformHmacSha384Id"><primary sortas="xmlSecMSCryptoTransformHmacSha384Id">xmlSecMSCryptoTransformHmacSha384Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformHmacSha384Id</programlisting>
<para>
The HMAC with SHA384 signature transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformHmacSha384GetKlass" role="function">
<title>xmlSecMSCryptoTransformHmacSha384GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformHmacSha384GetKlass"><primary sortas="xmlSecMSCryptoTransformHmacSha384GetKlass">xmlSecMSCryptoTransformHmacSha384GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformHmacSha384GetKlass
                                                        (void);</programlisting>
<para>
The HMAC-SHA384 transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the HMAC-SHA384 transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="xmlSecMSCryptoTransformHmacSha512Id" role="macro">
<title>xmlSecMSCryptoTransformHmacSha512Id</title>
<indexterm zone="xmlSecMSCryptoTransformHmacSha512Id"><primary sortas="xmlSecMSCryptoTransformHmacSha512Id">xmlSecMSCryptoTransformHmacSha512Id</primary></indexterm><programlisting>#define             xmlSecMSCryptoTransformHmacSha512Id</programlisting>
<para>
The HMAC with SHA512 signature transform klass.</para>
<para>
</para></refsect2>
<refsect2 id="xmlSecMSCryptoTransformHmacSha512GetKlass" role="function">
<title>xmlSecMSCryptoTransformHmacSha512GetKlass ()</title>
<indexterm zone="xmlSecMSCryptoTransformHmacSha512GetKlass"><primary sortas="xmlSecMSCryptoTransformHmacSha512GetKlass">xmlSecMSCryptoTransformHmacSha512GetKlass</primary></indexterm><programlisting><link linkend="xmlSecTransformId">xmlSecTransformId</link>   xmlSecMSCryptoTransformHmacSha512GetKlass
                                                        (void);</programlisting>
<para>
The HMAC-SHA512 transform klass.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the HMAC-SHA512 transform klass.
</simpara></listitem></varlistentry>
</variablelist></refsect2>

</refsect1>




</refentry>
